`
zhouyancheng
  • 浏览: 7228 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

20120704学习总结

阅读更多
                学习总结

学习java,首先重要的一点事安装JDK,这一点和你安装一些应用软件一样,这里就不详细介绍。

下面先介绍一下java中的基本数据类型:
      
     byte      int      short      long     char     float      double        boolean
     字节型    整型     短整型     长整型   字符型   浮点型     双精度        布尔型
     8bits     32bits   16bits     64bits   16bits   32bits     64bits       true/false
   注:程序中的整数默认的都是int型

   特别注意的是double和float是十六进制的,因而一个长整型的数值可以直接赋给一个浮点型的变量。
   除了基本数据类型意外,java中还有应用数据类型。
  
   了解了java中的数据类型,现在要熟悉一下数据类型的定义:

    整数的转型:吧小范围的整数类型值通过赋值直接装换为大范围的原始类型
                 可从short->char->int->long->float->double进行自动转换
                 但反之则需要强制转换
              
                强制转换和自动转换的区别:强制转换时由父类->子类
                                          自动转换时由子类->父类

****************************************************************************************

                
有前面的学习,我们自动==知道,java代码是以类为单位的。
首先,什么是类?类有两个关键组成部分:方法和属性,通过方法的调用,可以改变属性的值。
了解类,我们还要了解对象:对象是存在具体实体,具有明确定义的状态和行为,一个对象有特定的特征和行为。

首先定义类的方法:  关键字修饰符  calss 类名{ }
          类中定义了具体对象所共有的属性和方法,通过这个模板生成具体的对象,调用每个对象自己的方法,改变的就是具体对象的属性值。
 
创建类的方法:     要创建对象的类名 对象名=new  要创建对象的雷鸣()
                   注意:一个类可创建多个对象

方法的基本结构:
                 访问限定符 返回值  方法名(参数类型 参数变量名.......){
                                     方法体.......;
                                         }
                  按照方法的返回值,可将方法分类为:有返回值的方法和无返回值的方法,例如:
                                  public  void setName(String n){
                                                  name=n;
                                                  }         
                                  public  String getName(){
                                          return name;
                                                  }
                  方法还可以分成有参数方法和无参数方法。

另外,可将对象作为方法参数传递,如:
                 public class teacher{
                      public void teacstudent(student st)
                              String km="java学习";
                              int hour=10;
                              st.study(hout,km);}

*******************************************************************************************

            
构造器方法:每一个类默认都有一个无参构造器,即通过new 类名()调用而创建对象。我们可以自己给类重新定义构造器方法,这叫构造器方法的重载。如:
                  
                        public class student{
                                                      public student(){
                                                             this.name=name;
                                                                }
                                                               }
              构造器方法与一般方法的区别:构造器严格来说不算是“方法”  只是因为它可以传递参数。构造器方法没有任何返回值的定义,且必须与类名字相同。
        构造器方法只有在创建对象时调用--对于一个对象而言,它的构造器只能用一次。构造器方法也可以重载。

方法的重载:一个类中,可以定义多个同名,但参数类型和数量不同或者参数顺序不同的方法,叫做方法的重载。


值传递 和引用传递

java中的数据类型分为两大类:一类是应用类型,也叫类类型,是指同过类创建的对象的变量名字;一类是原始类型,即八大基本类型,这类型的数据在调用传递是遵守
                           “值传递”的规则。


*********************************************************************************************

               
为什么需要继承:当一个student类,unstudent为它的一个子类,这样子类就继承类了父类中的方法和属性,而当unstudent创建的对象调用方法时
                实际上是调用它父类中的方法,而且子类还可以再定义它自己所特有的方法,这样就避免重复写一些代码。

方法的重写:在子类中,可以把继承自父类的方法进行重写,但子类中的方法啊必须在父类中能够找到,而在重写后,子类所创建对象会优先调用重写的方法。

多态:多态指相同类型的对象调用相同的方法的时候,由于继承和重写的机制,得到的结果不一定相同。或者说,只有到运行时,才知道到到底是什么东西。

接口的定义格式:访问修饰符 interface 接口名{
                   属性或者没有实现的方法...
                           }
                          接口中定义了没有任何方法体实现的方法,只要定义方法返回类型,方法名,参数表,不能有实现。方法前无论是否写了public
                          限定符,接口中的方法都是public型的。不同于类的单根继承一个类可以实现多个接口。
                          与类的继承相同的是:接口也可称做实现类的父类;在实现类中,必须重写接口定义中的方法。
接口的继承:在java中接口与接口之间,也可以通过extends关键字实现继承,与类继承不同的是一个借口同样可以继承多个接口。


**************************************************************************************************************


画图板在实现是需要很多类,在这里就不一一列举。

在java中有以下一些常用的关键字:
         1 和访问修饰符相关的:
               private(私有的):private修饰的属性只能在该类本身中使用。

               protected(受保护的):在同一个包里和 public 类型是一样的,也是能够访问到的。
                                  但是如果在不同包里的 protected 类型的成员变量就只能通过子类来访问,这个修饰符是区别于其他的修饰符的。
                                   (注意:不能由子类实例化的对象进行调用)。

               public(公有的):public修饰的属性可以在任何地方进行使用。
                              (必须要有该类的对象才可以使用)

               变量和方法之前不加任何修饰符的为默认访问控制,这种情况下同包内的任何类都可以访问它,但这个包之外的类就无法访问。

          2 表示当前对象和调用父对象中发放的关键字:
               this:用于调用当前对象的属性和方法
                    其掉用构造方法的格式为:  this.(参数值,...)
                    普通方法的调用格式为: this.方法名(参数值);

               super :子类调用父类中的方法
                    调用格式如上。

           3 修饰类,方法,属性的关键字:
                static(静态的):可以用来修饰类,方法,属性
                                 修饰方法的格式为 public static void 方法名(参数值){} 
                                 修饰类的格式为   public static void main(String args[]){}
                                 用static修饰的类,属性,方法的特点:可以直接由主类名进行调用 ,在内存中只会存在唯一的一份。
final(最终的):如果不希望某个类被其他的类继承,在这种情况下需要使用修饰符final来说明一个类是终极的,不能够做父类。
           
           4 基本的数据类型:
                 byte:字节型
                 short:短整型
                 int:整形
                 long:长整形
                 float:单精度浮点型
                 double:双精度浮点型
                 char:字符型
                 boolean:布尔型
                  (这里在C++语言中学过就不加详细介绍)
            5 数值
                 null
                 true
                 false

            6 定义类,接口,抽象类,枚举,实现接口,继承类或者抽象类的关键字:
                 class
                      其定义格式为:  访问修饰符 class 类名{}

                 interface
                      其定义格式为:  interface 接口名 [extends 父接口列表]{}

                 abstract
                      定义格式:      public abstract 返回值类型方法名(参数列表);

                 extends      public class A  extends  B{}
                
                 implements   public class A  implements{}


              7 和包相关的:
                  import(引入)
                  package(包)
             
              8 循环,条件:
                  for(;;){};
                  while(条件){};
                  if()
                   .
                   .
                   .
                  else();
                  break;
                  continue;
                  switch
                      .
                      .
                      .
                    case;


              9 异常
try:     当try子句中的某行代码发生异常,会终止程序的运行,跳转到catch子句来执行。
catch:   捕获错误的语句
finally: 为了完成执行的代码而设计的,主要是为了程序的健壮性和完整性,无论有没有异常发生都执行代码。
throw:  java中是关于异常的操作
throws: 异常操作

       10 不常用的:
instanceof                      判断某个对象是否是类的实例。
synchronized                 实现线程同步。
transient                        瞬时的
assert                             断言
volatile: volatile修饰变量。在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。而且,当成员变量发生变化时,强迫线程将变化值回写到共                                享内存。这样在任何时刻,两个不同的线程总是看到某个成员变量的同一个值。
strictfp: 修饰类和方法,意思是FP-strict,精确浮点,符合IEEE-754规范的。当一个class或interface用strictfp声明,内部所有的float和double表达式都会                          成为strictfp的。Interface method不能被声明为strictfp的,class的可以。
const:    const是作为保留字以备扩充
goto :    java中关键字表中虽然没有goto关键字但是在声明变量时是不可以使用该单词的因为goto 是 Java 中一个没有使用的关键字,如果想叫做保留字也可以。               
       


数组的定义也不做多解释,最后关于队列,则是对数组的一个封装操作。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics