java类与对象

抽象:忽略问题中与当前目标无关的方面,只关注和当前目标有关的方面。

    比如抽象一个盘子类,抽象出它的半径等有关属性,而花纹可以不用考虑。

封装:1.利用抽象数据类型将数据和基于数据的操作封装在一起;

   抽象数据类型,即盘子类,数据和数据操作,就比如半径和对半径的更改方法;

      2.用户只能看到对象的封装界面信息,对象的内部细节对用户时隐蔽的;

     就像你的类里定义了一个方法,用户知道这个方法的用法和结果,而不会知道它具体的步骤;

      3.封装的目的在于将对象的使用者和设计者分开,使用者不必知道行为实现的细节;

继承(基于已有类产生新类的机制):

   1.新类可以获得已有类(父类,超类,基类)的属性和行为,新类称为父类的子类(派生类)

   2.在继承过程中子类继承父类的特性,包括方法和实例变量;

    方法就是C语言里的函数,实例变量是创建类的对象(实例对象)时,该对象的属性(值,或者一个描述),静态变量(类变量),是类固有的,只有一份,在以后的文章中会出现;

   3.子类也可修改继承的方法或增加新的方法;

    修改继承的方法就是子类对父类方法的覆盖(之后会有);

   4.有助于解决软件的可重用性问题,使程序结构清晰,降低了编码和维护的工作量;

java只支持单继承

  单继承:一个子类只有一个直接父类

  多继承:一个子类有一个以上的直接父类

类与对象的关系

  类是对一类对象的描述,对象是类的具体实例(实例化就是你知道盘子有哪些属性,然后你描述了一个实际存在的盘子);

类声明:

class:表明后面的是一个类;

extends:父类名,没有直接父类就不写了;

implements:接口名,没有实现接口也不写;

public:公有类;(一个源文件只可以有一个public类,并且在这个类里必须有main方法,文件名必须和类名相同,因为在程序运行时,只能有一个入口,当有多个public方法时,编译程序会报错,JVM也不知道哪个时入口)

abstract:抽象类(之后会有)

final:终结类(之后会有)

声明一个对象的引用(也可以说,一个类的对象的引用)

类似于C语言中的结构体指针;

语法:

  类名  引用变量名;

对象的创建

  new    类名();

  分为两部分,第一部分是在堆内创建一片该对象的空间,第二部分实际上是要触发类的构造函数(类名());会返回该对象在堆内的地址,赋值给对象的引用

具体的语法

    类名   引用变量名= new  类名();

  

猜你喜欢

转载自www.cnblogs.com/mcmx/p/9108331.html