码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象解释,命名习惯,方法调用丶覆盖

时间:2015-08-04 15:17:21      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:


面向对象:
面向过程:

 程序设计,软件开发解决的本质问题?就是抽象。
 抽象需要抽象什么? (数据,业务逻辑)
 以什么抽象作为导向(面向)?
  面向对象:以数据抽象为导向
  面向过程:以业务逻辑抽象为导向


类: 1,静态属性 --属性
 2,动态行为 --方法  属性,方法 统称为类的成员
 
 --方法 
 1,修饰符 返回值类型 方法名 (形参表){
 
   方法体
 }

 public void move(){
  System.out.println(name +"Moving");
 }
 
 public访问权限修饰符(公开的)
 private(私有)
 void返回值类型(空类型)
 int,double,String。。。
 move方法名
 
 命名习惯: 
  1,类名 每个单词首字母大写,其他字母小写
  2,属性.方法名 第一个单词全小写,以后每个单词首字母大写,其他字母小写。例:setName()
  3,包名 全小写
  4,常量 所有字母大写 例:final int MAX_SIZE;  final常量修饰符

 方法调用匹配:
  1,实参类型和形参类型要匹配
  2,方法中return的值和返回值类型要匹配
 
 方法调用的步骤:
  1,为被调用方法分配临时空间
  2,将实参传给形参
  3,流程跳到被调用方法中执行
  4,执行完或者遇到return,流程返回主调方法,同时被调方法临时空间释放。 

 
 注:一个java文件可以定义多个类,但只能有一个pubilc声明的类,并且这个用public声明的类,类名必须跟文件名一致 

 
 按值传递(适合所有基本数据类型)
 
 按引用来传递(对象)

构造方法:
 1,构造方法必须跟类名同名
 2,构造方法没有返回值,也不用声明void

 


面向对象的三大特征:封装,继承,多态

继承:
 抽象父子类关系遵循原则:任何父类适用的地方子类一定适用。
 
 注:继承不是最好的代码复用的方法。
 
 关键字extends(扩展)
 例:public class Bird extends Animal{}
 
生成对象的过程:
 1,分配对象空间
 2,给属性赋初值
 3,调用构造方法

定理:
 1,任何主类对象构造方法都会去调用父类的构造方法
 2,任何类都有构造方法,如果程序员自己不定义,则系统会加上一个默认的构造方法,如果定义了系统就不会加。
 3,任何子类的构造方法第一行一定是super(...);或者this(...),如果程序员不这样写,则系统会默认的加上super(...);
 
 this(...);调用本类的其他构造方法,他只能出现在构造方法的第一行。
 super(...);调用父类的构造方法,该语句只能出现在构造方法的第一行。
 super();调用父类中无参的构造方法。
 
 子类中调用父类中的同名方法用super.xxx
 this.xxx 调用本类中同名的成员变量

方法覆盖:
 1,放生在父子类之间;
 2,同名,同参,同返回值;
 3,子类方法的访问权限不能比父类方法的更封闭;
 4,子类方法抛出异常的类型不能比父类方法更宽泛

面向对象解释,命名习惯,方法调用丶覆盖

标签:

原文地址:http://www.cnblogs.com/zggblog/p/4701738.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!