Java 基础(二) 数据类型:类(class) 其定义方法及其设计方法

http://hi.baidu.com/drmfslc5/blog/item/1716d6da32b966e538012ff0.html


面向对象思想的重要概念

       面向对象程序的设计实质就是类的设计,在分析问题域后,抽象出适当的类,完成类的属性 行为和类间通信接口的设计,从而完成一个软件系统。类也是java中一种数据类型。

       首先,一个类是被定义在某个包(package)中的一个java文件中。

             包 package 是类的集合。它将一些有着同一某特性的类收集在一起。通常在java文件中要用package标明编译出的.class在哪个包下。编译器在找类时,会一一搜寻classpath中的路径 有无此包。所以在用到其他包,或类库(一种jdk中以包形式出现的已经定义好的类)时,需要用import 导入包+.该类名。以使编译器能找到该类 。为了区别不同包,且由于域名通常唯一性强,包的命名规范为倒写的域名。

            .java文件开始可以标明自身的类所在包,并导入其他包中的类

如下:   package idv.cartoon.study.entity; //注意分号

              import java.util.*;                            //     导包顺序规范:java库, javax库,第三方库,自己写的

              import javax.swing.*                          

              import org.springframework.core.*;

             import idv.cartoon.study.factory.*;    //注意分号         

             类的定义规范:

               访问权限(public/(包)/protected/private) 类修饰符(abstract/final) (关键字)class    类名(随意定,但最好按类名标识符规范) extends 单个非final类 implements 单个或多个逗号隔开的接口 {(类体)}       

              其中,红字标识的部分是定义一个类所必须有的成分。 如下类的定义 :

               class    ClassName {}           abstract class Competition extends Object implements Runnable {}

       访问权限:              体现面向对象的一个重要特性 封装性 。所以只有和类有关的设计才涉及到访问权限,如果你在一个局部变量前用访问权限来修饰,一定是错误的。 所以访问权限只能在类,类的属性,类的方法前。这里主要说明类的访问权限。

                      默认权限(包权限) 无任何访问权限关键字修饰的类   这样的类在任何地方都可以被定义,被设计,它的可见范围是同一包下

                      public 权限               由public 修饰的类   必须被定义在className.java的文件中,即public的类 类名需要与文件名相同

                      protected /private    由两个修饰符修饰的类,必须被定义在类的内部,成为内部类的专有访问权限。但内部类是四种访问权限都可以的。其中,protected修饰的内部类可以被其属于的类及此类的子类使用。 private修饰的类只能被拥有它的类使用。 有关访问权限,后续将作总结性说明

        类修饰符      abstract        abstract修饰的类被称作抽象类,抽象类的特征为:不能实例化,即不能成为对象,不能被分配内存空间。但是它可以有具体的属性与方法

                            final              final修饰的类被称作最终类         最终类的特征为:不能被继承,这里可以理解成树结构的叶结点。

       class   +   /*className*/ + {(类体)} 定义设计类必须有的三个组成部分

        extends 单个非final类    体现了面向对象的继承特性,多态特性。但是java中的继承只能是单继承。这属于规范,可以用树结构来理解。 继承的特性也符合人们对事物的理解思想,而且还减少了相同代码的复写。多态性是说一个父类可以被实例为多种子类的对象这一特性

        implements 单个接口或多个用逗号隔开的接口  体现了面向对象的继承特性,多态特性。 补足了java单继承的缺失,接口通常被起名为形容词,表示一种特性,从而实现了某个接口的类具有这种特性。多态性是说一个接口可以被实例化为多种实现类的对象这一特性

         进入类体中设计 类的内部 (在类体中写的部分,面向对象程序设计主要就是设计类内)

        首先 关键字this。 一旦创建了一个类实例,jvm就为该对象创建了一个默认的指向自己的引用。this引用是用在方法中指代当前对象的。还有一种特殊的用法是 this(); 在类内部方法里调用构造方法。

                类的属性       属性是类的静态描述。也就是说用它来描述类的静态特征,如一个三角性 有浮点类型的正值的三个边长。定义类属性的常规操作如下:属性的定义规范

               {访问权限(public/(默认)/protected/private) 属性修饰符(static/final/volatile/transient/synchronized) 数据类型(八种以及其它类引用)    属性名(随意定,但最好符合属性名标识符规范) (赋值符用以初始化)=   初始化内容(八种基本类型有数字,true,等值,引用一般用null初始化)    (分号);           

                                          .

                                            .

                                           .   

}

                  类的方法 方法是类的动态描述。也就是说用方法描述类的动态属性。如三角形类中有个方法返回计算所得的周长值。方法还是与其他类的交互通信工具。也就是如果类的对象作用于其他类的对象或被其他类的对象作用。   {

                      访问权限(public/(默认)/protected/private) 方法修饰符(static/final/synchronized) 返回值数据类型(八种以及其它类引用)    方法(随意定,但最好符合方法名标识符规范) (括号引住的参数列表)throws (异常类)      (分号);/(方法体){}

}

特殊的方法 构造方法, 有关构造方法的说明在后续有关对象的初始化与清理中。

特殊的成员                  有关块的说明在后面有关对象中成员初始化顺序中。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值