当前位置:首页 » JAVA技术教程

java每日一记

2014-10-23 10:56 本站整理 浏览(6)

1.java中不允许将int转换为bool类型

2.java中对于普通类型,如:int,float是值传递。对于对象类型,是引用传递。如A a=new A, A b=a; 此时a和b都指向了new A 分配的对象了。

3.当编写一个java源文件时,此文件通常被称为编译单元。每个编译单元都必须有一个后缀名.java, 而在编译单元内则只可以有一个pulibc类, 该类的名称必须和文件的名称相同。每个编译单元只能有一个public类,否则编译器不会接受。如果在编译单元之中还有额外的类,那么在包之外的世界是无法看见这些类,因为他们不是public类,而且他们主要是用来为主public类提供支持。

4.java类变量的初始化:(1)在定义变量的时候 (2)在类的构造函数中 (3)如果没有在上述2个地方赋值,那么类中的变量都会有一个初始默认值。这个默认值是先于构造函数中所赋予的值用来初始变量。

5.同一包中的类可以相互的访问,不同包中的类要使用#import来导入。

6.java中父类和子类可以拥有同名函数不同参数,此时子类不会屏蔽父类中的函数(重载机制不会失效)。但在c++中就不行,子类会屏蔽父类的函数。

7.组合就是A类中拥有一个B类的变量,此时A类就相当于拥有了B类的各种接口。继承也可以实现这种效果,但继承可以使用多态技术。

8.继承中的初始化顺序为(从头到尾):

(1)父类的静态变量static定义处的初始化

(2)子类的静态变量static定义处的初始化 :pirvate static int x2=10;

(3)进入main()函数

(4)new出子类对象,调用父类的定义处初始化的变量,如:private int i=9;

(5)调用父类的构造函数

(6)调用子类的定义处初始化的变量

(7)调用子类的构造函数

9. java中的private方法被自动认为是final方法。所以继承private方法是不能实现多态的

10.java的构造器不具有多态性,且隐式的声明为static

11.不要再构造函数中使用多态性,行为不确定

12.使用abstract void f()声明抽象方法,包含这个抽象方法的类是抽象类,抽象类中的方法不一定都要是抽象方法,可以拥有普通方法。如果一个类从抽象类继承,那么它必须实现该父类的所有抽象方法,否则它自己也变为抽象类,并且必须用abstract来修饰该类。

13.类中的private权限修饰的方法和变量都是默认的final.

14.

interface Test{
  public void show();
}

public class MyVersion{
  public static void main(String[] args){
    Test t = new Test(){
    public void show(){
      .....
   }
  } 
 }
}
上述的main()函数中的代码,在new Test() 后面的含义是:定义了一个匿名类,该类继承与Test接口类,并且实现了Test中的show()函数。15.java中除了基本类型(int float..)是值传递,其余的类类型都是引用传递。可以返回局部变量的引用,不会有问题。