java 基础总结

    两周前我决定开始学习java,不单单是学习这一门语言,学习思想,学习面向对象,当然算法和数据结构永远都不能丢,继续学习,因为我的C语言版本的数据结构都没有学完。每周四天学习java,两天用来学习算法,一天用来总结——写博客。今天听完课感觉思维很混乱,有一点必要的总结总结。今天没有什么灵感,不过没关系带上耳机听听歌,或许就好了。
   数据和变量:java中有四类八种数据类型;有整型,浮点型,逻辑型,字符型;整型有 byte、short、int、long,浮点型有float、double,逻辑型有boolean(它只有两个值是true false),字符型 char。
  java中直接有String类,注意这里是类,可以产生对象不是数据。下面是关于String的方法一个[链接](http://www.cnblogs.com/crazyac/articles/2012791.html)。
  StringBuuffer的[链接](http://www.cnblogs.com/springcsc/archive/2009/12/03/1616330.html)![StringBuffer示例图](https://img-blog.youkuaiyun.com/20150925192908045)
  scanner在我的感觉就是C语言里面的scanf语句。只是把scanf包装起来变成了一个类。这里是一个初步的理解,到以后再做深入。
  java中大类型转换成小类型需要强制转换。 例如:`int i = 10;char j = (char)i;`
  java的运算与逻辑里,短路运算也就是 && 和 ||  ,&&如果第一个是假后面的条件就不用看了,直接为假;对于||,第一个条件为真,直接为真。长路运算是 & 和 | ,当左右数字的时候按位进行运算,如果两边是逻辑运算需要两边都进行逻辑运算之后在进行运算。
  对于java中的异常处理,使用`try{}catch(){};`语句进行包裹,thows关键字是用来抛出异常,就像你负责的项目除了责任,你要把锅甩给上司。


  java的基础只是学完了,面向对象开始了,虽然这也是基础,不过终于学了一点东西了,哈哈。
  **第一**是java的类和对象,介绍的是方法的创建和重载,类的创建与类和对象的关系,还有面向对象的思想,下面我来一一回忆。
  方法在c中也就是函数,在java中叫做方法,下面是方法的创建格式:![方法的定义](https://img-blog.youkuaiyun.com/20150925194319146) 
 方法的重载就是可以创建相同名称的方法,但是其中的参数不同,在调用方法的时候会根据不同的参数,系统自动选择方法。
 例如:
//方法的重载
           public void tell(){
           system.out.println("holle world"); 
           }`

           public void tell(String n){
          System.out.println(n);
           }
   接下来就是类的创建和类与对象的关系,类的格式:![类的创建](https://img-blog.youkuaiyun.com/20150925200532861)类就是一个虚拟的属性集合体,比如说人是一个类,他的属性有 name age 等等,而人有军人,学生,男人,女人等等。
   面向对象和面向过程的区,如图![面向对象](https://img-blog.youkuaiyun.com/20150925201309202)

   **第二**是封装性,封装性就是把东西封装起来,目的是保护某些属性和方法不能被外部看见,用private关键字实现。比如说一个电视机我们只能看到外壳而不能直接看到里面,我们说这是封装起来的。如果必须访问用set()和get()方法实现。![给private属性赋值](https://img-blog.youkuaiyun.com/20150925202316052),
   最后是关于构造方法的![](https://img-blog.youkuaiyun.com/20150925203527493)


   **第三**是关于引用传递的内容,看了一个应用传递的博客,自己敲了一个才懂什么是引用[引用传递](http://www.blogjava.net/jiafang83/archive/2007/10/23/155412.html)
  package com.lialei.method;
class Num{
    int a;
    int b;
    }
public class asd {

            static void exchange(Num b){//静态方法,交换a,b的值
                int temp;
                temp = b.a;
                b.a= b.b;
                b.b= temp;

            }
            public static void main(String[] args){
               Num n = new Num();
               n.a=100;
               n.b=10;
               System.out.println("before call: " + "a=" +n.a  + "\t" + "b = " + n.b);//调用前
                exchange(n);                                                                    //值传递,main方法只能调用静态方法
                System.out.println("after call: " + "a=" + n.a + "\t" + "j = " + n.b);//调用后
            }

}  
    关于this关键字,只有一点浅显的理解![关于this关键字](https://img-blog.youkuaiyun.com/20150925214008834)
    还有static关键字,![关于static](https://img-blog.youkuaiyun.com/20150925214140947)

 java面相对象还有后续内容,这是第一周的总结。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值