Java关键字和基础问题

1. Java关键字

1.1 extends和implements

extends继承普通class或abstract(抽象)类(java单继承)
implements多继承能力,实现interface(接口)。 注: abstract implements interface

1.2 interface

1)实现多重继承, public interface Tinterface
2)方法都是public(可不写,默认),只需定义返回值和名字,不能有实现
3)属性默认是public static final(可不写,默认)

1.3 abstract

1)修饰class,可无抽象方法。public abstract class AbstractList
2)修饰方法,public abstract void sleep(); //子类中必须实现

1.4 final

1)属性/func参数--值不可改变
a)final int i=100 , i值不能改变
b)final File f=new File("c:\test.txt"); //f不能重新赋值,但f.xx可以
2)方法--子类不得覆盖重写该方法,确保在继承中使方法行为保持不变
3)class--表明不打算继承该类,而且也不允许别人继承。 fianl class Art {}

1.5 static

不需new对象即可调用到 静态方法/变量
1)static方法--> public static void print()
2)static变量--> 静态变量为所有对象共享,内存中只一个副本,当且仅当类第一次加载时被初始化一次
3)static代码块--> 可任何位置,形成静态代码块优化性能,类初次加载时会按照顺序执行static代码块,且只执行一次
private static Date startDate,endDate;
static{
startDate = Date.valueOf("1946");
endDate = Date.valueOf("1964");
}

1.6 this/super

1)this 指当前对象自己 (可用于返回对象自己)
2)super指代父类。a)super() 调用父类中的初始化方法 b)super.ss() 调用父类中方法/属性

1.7 instanceOf**

1) p instanceof Student

1.8 泛型

1)泛型必须是对象,不能是简单类型(int float)
2)类型参数可以多个,<T extends SomeClass & interface1 & interface2 & interface3> //仍保持单继承的规则
3)限制类型,可使用extends, 如
4)通配符?表示未知类型, 处理定义List

posted @ 2017-07-24 14:07  Desneo  阅读(480)  评论(0)    收藏  举报