1.访问权限的问题:
一个类只可能有两个访问级别:默认和公共。默认--它仅可以被相同包的其他代码访问。
(一个文件中只可以有一个类声明为public,被声明为public的类名应和文件名相同。)
2.interface
接口指定一个类做什么.而不是规定它如何去做.它是不含方法体的.缺少实例变量.一个类可以
实现多个接口.接口是 为了支持运行时动态方法解决而设计的.它把方法或方法系列的定义从类
层次中分开.接口中定义的方法没有默认值.每个包含接口的类必须实现该接口的所有方法.
接口的默认访问权限是在包中的所有代码都可以访问.
3实现接口:
implements
example:access class classname [extends superclass]
[implements interface,[interface....]]
{
//class body;
}
当实现一个接口方法时.该方法必须声明为public.
4.通过接口引用实现接口:
可以把变量定义成使用接口的对象引用.所有实现了该接口的类的实例都可以被这样的一个变量
引用.
class classname1{
public static void main(String [] args){
interfacename variablename=new classname1();
variablename.menth();//用一个变量来调用接口的方法.
}
}
class classname2{
public static void main(String [] args){
interfacename variablename=new classname2();
variablename.menth();//用一个变量来调用接口的方法.
}
}
class testIface{
public static void main(String [] args){
interfacename c=new classname1();
classname2 ob=new classname2();
c.menth();
c=ob; //这里是重点.这里实现了一个多态.变量"C"可以接任何实现了接口的类的实例.
5.输入输出
字节流:IputStream,OutStream(抽象类) 字符流:Reader,Writer(抽象类)
在System对象中预定义了三个输入输出有关的对象:in,out,err(static,final)
System.in=>InputStream System.err和System.out=>PrintStream
InputStreamReader对象可以将字节转换成字符。
BufferedReader br=new BufferedReader(new InputStream(System.in));
==是判断两个子符串是否在同一个存储位置。equals(Object obj)如果字符串与obj相等,就返回true.
数组的定义格式:
type var_name[]; '只是声明,没有分配内存空间
array-var=new type[size]; '分配空间
int monty_days[]=new int[12];
int[] a1={1,2,3,4,5};