最近忙得快疯掉了,而且着凉了病得好辛苦。。。不过今天还是能抓紧时间上来为大家写些什么,简单一点,希望大家不要介意。
今天来补充说明抽象类和接口。
对于class定义,格式如下:
[public|protected|private] [abstract|final] class 类名 { //类的内容 .... } |
前面是modifier。
需要特别说明的是,对于一个JAVA文件,要求里面一定只能有一个和该文件同名的public类。但是倒不是说一个JAVA文件只能有一个类:
Java代码
//file name: ClassDeinfeDemo.java package classdefine; /** * This class is required in this file */ public class ClassDeinfeDemo { } public class AnotherPublicClass { } class ProtectedClass { } |
像上面的写法也是可以的,只是一般情况下我们不提倡。因为一般这样写的原因只有一个,就是这个类只会在同一个java文件里面被调用,而不会在其它地方被调用。而且这种写法只能定义default类型的普通类,抽象类,或者final类
另外类中有类也是可以的:
Java代码
package classdefine; public class MemberClassDemo { /** * I'm a member of this class */ private class MemberClass { } public class PublicMemberClass { } } |
private类型的类只能通过这种方式来定义。
需要注意的是,成员类的外部调用是很有趣的:
Java代码
package classdefine; public class MemberClassCall { public static void main(String[] args) { new MemberClassDemo.PublicMemberClass(); } } |
只要把成员类的所有类也加进来,然后用.来调用成员类就好了。这种调用方式和static方法的调用是一样的。