java笔记1

javadoc 使用 -d 指定存储路径 目标文件

@author 作者

@version 版本

@param 方法的参数 后面接一些说明

@return 返回值

java也支持三元运算符

 单例设计模式:

解决了对象的唯一性问题.

写法有两种:

//方法1
class Single {
	private static Single s = new Single(); // 恶汉式
	private Single() {
	}
	public static Single getInstance() {
		return s;
	}
}
//方法2
class Single2 {
	private static Single2 s = null; // 懒汉
	private Single2() {
	}
	public static Single2 getInstance() {
		if (s == null) {
			s = new Single2();
		}
		return s;
	}
}
//测试代码
class Test{
    public static void main(String [] args){
     SinlgeInstance.getInstance(); SingleInstance x=null; x.getInstance(); System.out.println("end"); SingleInstance y=null; y.getInstance(); } }

静态变量在类实例中只存在一个实例存在.静态函数在类没有初始化时就可以使用.

什么时候使用静态?共享数据.

静态方法与变量是在class文件被加载到内存的时候就开始执行的.

静态代码块是在class文件被加载到内存的时候开始执行.

静态方法如何调用非静态方法和成员?通过方法参数传递一个对象引用.

  1. 抽象类的特点,以及细节?抽象类内部可以没有抽象函数(java.awt.*),但是抽象函数一定写在抽象类内(接口不必显式声明为abstract),
  2. 接口的表现形式的特点。接口用来扩展类定义(可以看作为标准),弥补单继承缺点.接口不能实现方法,但可以定义成员变量.类可以从基类单继承,同时继承多个接口.接口默认属性(成员变量)为public static final.可以使用"接口名.属性"的方法调用接口的属性.没有构造方法.不能直接实例化.必须实现所有方法或者定义当前类为抽象类,再对起进行衍生(然而还是需要具体实现).接口可以进行多继承.类只能单继承.
  3. 多实现和多继承的区别?多实现是对原来类或接口的抽象方法的多个继承实现的多个实现,多继承是从多个接口+最多一个类的继承实现的新的类(也可以是接口)
  4. 抽象类和接口的区别?抽象类里面可以有方法的实现.接口不可以有方法的实现.接口默认属性为public static final,类默认属性是default

方法传递引用参数进行基本数据类型交换是不可以的,只能通过自定义类的方法对数据操作.

多态:父类引用指向子类,产生的调用:

  1.父类和子类有相同的成员变量,多态下访问的是父类的成员变量。

  2.当父类和子类具有相同的非静态方法(就是子类重写父类方法),多态下访问的是子类的成员方法。

  3.当父类和子类具有相同的静态方法(就是子类重写父类静态方法),多态下访问的是父类的静态方法。

多态的体现:

  1.父类引用指向子类对象.

  2.父类引用也可以接受自己的子类对象.

类和接口都可以作为多态的父类引用类型.

多态优缺点:避免过度使用重载,前提:类间存在继承关系.

内部类:需要在类内部实现具体的事物.分为成员内部类(以成员形式出现)和局部内部类(方法中的).静态成员只能定义在静态的内部类中.

优点:实现简单,可以直接访问父类对象.

内部类中的重名属性如何区分:outter.this.prop1....;inner.this.prop1....;

局部内部类只可以读取(无法写入)函数中final属性的变量.

匿名内部类在实际工程中只被用来做形参传递的接口实现(因为它没有办法调用实现类的派生的方法(多态导致)).

匿名内部类是使用频率最高的,优点:简化书写.

posted @ 2018-11-10 23:50  absudra  阅读(154)  评论(0编辑  收藏  举报