A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© AtheerCHA 中级黑马   /  2015-1-8 22:03  /  866 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


-- Java面向对象编程知识点总结

一:面向对象概述。

   面向对象:使复杂的事物变得简单,使程序的开发人员从程序的被动者变为了程序的指挥者。

  • 类:


类是对现实世界事物的抽象化描述。

  • 对象:


对象是类的实实在在的实体。

  • 面向对象的特点:1.开发的过程:其实是不断的创建对象,使用对象,指挥对象。2.设计的过程:其实就是在管理和维护对象之间的关系的过程。


  • 面向对象:(对象+对象+对象......n+对象)+消息(消息就是对对象的控制)。
  • 基于过程:算法+数据结构,是单一的通过设定好的步骤一步一步的实现
  • 面向对象的特征:封装、继承、多态。


二.类的实现过程:

例如以人为例,先分析人具有的静态属性(属性)和动态行为(行为)。

人:属性有:姓名、性别、肤色、国籍、年龄、学历等。

行为有:编程、学习、吃饭、睡觉、打篮球等。

1.从以上属性和行为中抽取你关心或者说是需要用的属性和行为。

    
V
  
    
V
  
                      VVVV

Class 人{

     姓名

     性别

     年龄

     学习();

     编程();

}    使用Java程序实现:               

    
v
  
    
v
  
                      VVVV

classPerson {

        String name;

        String sexy;

        Int age;

        void learn(){}

        void  Coding(){}

}

2.创建对象的过程(也称作类的实例化过程)

class PersonDemo{

  publicstatic void main (String[] args){

          Personman = new Person();//实例化对象使用new关键字

//其实是在内存的堆内存中开辟对象的存储空间。

//下面是对实例化的对象进行详细的描述和使用。

          Man.name= “xiaoqiang”//调用man对象中的属性

man.age = 20;   

          man.sexy= “male”;

          man.learn();//调用man中的方法行为。

          man.coding();

}

}


创建对象的过程如下图所示:

三:类中的元素:

成员变量:作用于整个类中(存在于堆内存中因对象的存在而存在)。

局部变量:作用于函数中或符合语句中,存在于栈内存中。

匿名对象: Person man = new Person();可以写为:new Person().age = 20;

匿名对象的使用方法1:调用属性是无意义的,单调用方法只调用一次时可以使用,当对象调用多个方法时,必须声明引用类型即句柄。

使用方法2:可以将匿名对象作为实参进行传递。

三:封装:

   封装是指隐藏对象的属性和方法,仅提供公共的访问方式。

1.封装的优点:1.提高了代码的重用性。2.将变化隔离。3.提供了安全性便于使用。

封装的原则:1.将不需要对外提供的内容隐藏起来。2.提供公共的访问方式对其进行访问。

例如:某大型汽车零配件公司建立了的网络交易平台。

Class零件类{

           零件价格;

           零件销量;

           零件的购买方;

}

B厂客户可以从此类中获取零件的价格、零件的销量,当客户获得某种型号的零件大部分被A厂客户购买(B厂客户的禁止对手)时,B厂有可能停止购买,因为与竞争对手的货源相同,这时如果该公司对该类中的零件的购买方进行私有化(private)也就是进行封装,则就不会出现上述情况。但某些客户是需要通过交易平台对购买方的

信息进行获得,比如公司的老板有获得购方的权限,此时就要建立一个共有的(public)方法给老板,让老板可以获得这个属性。

Class零件类{

        Public  int零件价格;

        Public int零件销量;

        Private String零件的购买方;

public  String bossCan (){

        return 零件的购买方;

}

}

2.在类中一个私有的成员变量通常会对应两个方法:1.设置器2.访问器。

如:class LearnDemo{

        privateint age;

        publicvoid setAge(int a){

   age = a;

}

        publicvoid getAge(){

   return age;

}


}

3.构造函数: 1.构造函数与类名一致。2.不需要定义返回值。3.不可以写return语句。

对象在建立后首相调用对象的构造函数进行初始化,假如当一个类中没有定义构造函数,系认会默认为该类添加构造函数。

构造函数的作用:构造函数为对象初始化(原因是某些对象在一出现后就具有某些属性。比如:中国人生下来就是黄色的皮肤)。

构造函数的重载:因为某些对象需要初始化多种属性。

重载的方法:函数名必须相同、参数类型和参数个数不能彼此间相同

构造函数与普通函数的区别:1.构造函数在对象一建立时就首先运行,只能运行一次。2.一般函数:调用时执行,并可以执行多次。

对象的创建过程。.jpg (135.71 KB, 下载次数: 8)

对象创建过程

对象创建过程

1 个回复

倒序浏览
占个沙发再看
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马