java基础知识总结1

来源:互联网 发布:数据备份软件下载 编辑:程序博客网 时间:2024/05/30 19:34

1.静态变量与静态方法

  • 静态变量:方法内声明的是局部变量、类内方法外声明的是实例变量。静态变量在类内方法外声明,由类的所有实例所共享。即一个对象对变量值的改变将影响其他所有对象。
  • 静态方法:静态方法可以通过类名来调用。静态成员不可以访问非静态成员。
    静态成员不可以访问非静态成员主要是从java的内存机制来分析,在new一个对象的时候并不是先在堆中为一个对象开辟一个内存空间,而是先将类中的静态方法和代码加载到方法区。然后再在内存的堆中创建对象。类的静态成员属于类本身,在类加载的时候就会分配内存。非静态成员属于类的对象,在创建对象时才会被分配内存。
  • 静态方法中访问非静态方法的办法:
    1.传参
    public static void f(Object o) {
    o.hashCode() ;
    }
    2.声明一个对象,创建该对象的实例在静态方法中调用该方法
    test t=new test();
    然后在t中调用test()的方法和成员变量

2.this引用使用情况:
1.适合用于当前正在执行该方法的对象
2.区别实例变量和形参

3.类之间的关系:
依赖:类A的方法通过声明一个类B的对象来调用类B的方法;类依赖于本身,一个类的对象与本类的其他对象进行交互。
聚合:依赖的一种特殊形式,将其他对象的引用作为自己实例数据的对象。类A被类B定义为类B的一部分,通常是通过传参来实现的。
接口:是一组常量和抽象方法的集合。一个类实现一个接口一定要实现该接口中的所有方法。

4.Java多态性的三个机制:重载、覆盖、泛型。
泛型:类型参数化。向上转型和向下转型。

5.Java中匿名内部类实现的两种方式:使用匿名类的目的是在某个地方对某个类需要有特殊的实现,匿名内部类就是重写父类或者接口的方法。
1.继承一个类,实现其方法
2.实现一个接口,实现其方法

1.public class TestAnonymousInterClass{     2.    public static void main(String args[]){     3.        TestAnonymousInterClass test=new TestAnonymousInterClass();     4.        test.show();     5.    }     6.    //在这个方法中构造了一个匿名内部类     7.    private void show(){     8.        Out anonyInter=new Out(){// 获取匿名内部类实例     9.                 10.            void show(){//重写父类的方法     11.                System.out.println("this is Anonymous InterClass showing.");     12.            }     13.        };     14.        anonyInter.show();// 调用其方法     15.    }     16.}      17.    18.// 这是一个已经存在的类,匿名内部类通过重写其方法,将会获得另外的实现     19.class Out{     20.    void show(){     21.        System.out.println("this is Out showing.");     22.    }     23.}    
原创粉丝点击