当前位置:编程学习 > JAVA >>

java 类的声明

类具有封装性,继承性,多态性
封装性体现了细节的隐藏和权限的控制,继承性体现了类的层次结构,多态性体现了方法名相同而实现却不同
java中类的声明形式如下
[java] 
[修饰符]class 类名[extends 父类] [implements 接口名]  
{  
属性(成员变量)->基本数据类型,对象  
操作(成员方法)->函数  
}  
类声明中的修饰符有public,abstract,final
注意:应用程序类是public的且一个java文件只能有一个public 类
abstract 类没有实例
final类不能被继承
类的访问即指声明该类的对象或继承该类,显然abstract和final不能同时修饰一个类,否则没有意义,编译时会提示either abstract or final, not both
 
成员变量的声明形式如下
[修饰符]变量类型 变量名[=变量初值]
修饰符有 public,protected,private, private protected,static,final
static变量相当于全局变量
[java] 
class Account  
{  
    static int num=0;  
}  
public class cam2  
{  
     public static void main(String args[])  
     {  
         Account a=new Account();  
         a.num++;  
         System.out.println(a.num);  
         Account b=new Account();  
         b.num++;  
         System.out.println(b.num);  
         System.out.println(Account.num);  
         //Account.num相当于全局变量  
     }  
}  
输出为
1
2
2
这里可将Account.num视为全局变量
final修饰的变量相当于常量,不能改变
如将整形的最大数加1显然是不允许的
[java]  
public class cam2  
{  
     public static void main(String args[])  
     {  
         Integer.MAX_VALUE++;  
         System.out.println(Integer.MAX_VALUE);  
     }  
}  
编译时提示The final field Integer.MAX_VALUE cannot be assigned
成员变量不仅可以是基本数据类型,还可以是对象,如下例
[java]  
class Table  
{  
    int record=0;  
    void addrecord()  
    {  
        record++;  
    }  
}  
class Database  
{  
    Table t1;  
    Table t2;  
    Table t3;  
    void InitDatabase()  
    {  
        t1=new Table();  
        t2=new Table();  
        t3=new Table();  
          
    }  
}  
public class cam5  
{  
    public static void main(String args[])  
    {  
        Database db=new Database();  
        db.InitDatabase();  
        db.t1.addrecord();  
        System.out.println(db.t1.record);  
    }  
}  
输出为1
 
成员方法声明的修饰符有public,protected,private,static,abstract,final
static 方法只能处理static修饰的成员变量 
abstract 方法只能出现在abstract类中且没有方法体
final修饰的方法不能被子类覆盖
 
补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,