Java中this关键字主要有以下两个方法: 1.this引用 - 可用于任何非static修饰的方法和构造器中,当this用于方法中时,它代表调用该方法的实例/对象;当this用于构造器中时,它代表构造器正在初始化的实例/对象 2.this调用 - 只能在构造器的第一行出现. 如何区分this引用与this调用呢? this引用写法为:this.  ;  而this调用写法为:this(); 例1: class TestThis{ private double weight; private…
Java学习笔记之---面向对象 (一)封装 (1)封装的优点 良好的封装能够减少耦合. 类内部的结构可以自由修改. 可以对成员变量进行更精确的控制. 隐藏信息,实现细节. (2)实现封装的步骤 1.  修改属性的可见性来限制对属性的访问(一般限制为private) private String sex; 2. 对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问 public void setSex(String s){ this.sex=s; } public…
一周Java学习总结 今天就总结理清一下关于面向对象和面向过程的程序设计的一些不同特点,以及讲下static关键字. 面向对象 现在接触的Java是面向对象的,现在的程序开发几乎都是以面向对象为基础的.我现在不看书,光靠回忆去想这个特性的解释性语言,只能想到看书时很深刻的一句话,面向对象就是一个更加具体描述一个事件的一种设计方法,就像在公司里面吃饭,面向对象的话就是一个总负责人即类似大厨准备好菜谱什么的,分工下去给下属,每个人负责一个菜,每个人按照自己的秘方去完成,最后总的做出来形成一桌满汉全席…
现在一般的语言都支持面向对象,而java更是将其做到很过分的地步,java是强制使用面向对象的写法,简单的写一个Hello Word都必须使用面向对象,这也是当初我很反感它的一点,当然现在也是很不喜欢它这一点.但是不得不说它设计的很优秀也很流行. 面向对象 面向对象一般是将一些独立有相似功能的模块封装起来组成一个类,然后调用者不必关注实现细节而只需要关注调用某个类方法即可.面向对象简化了程序设计.与之相对应的是面向过程,而C就是典型的面向过程的程序设计语言. 面向对象一般有3种特性:封装.继承.…
多态: 举例:描述一个事物的多种形态,如Student类继承了Person类,一个Student对象既是Student,又是Person 多态体现为:父类引用变量可以指向子类对象 多态的前提:必须有子父类关系或者类实现接口关系,否则无法完成多态 在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法 举例: public class Fu { public void show(){ System.out.println("父类的show方法"); } } public class…
1.类的概念 一堆具有共同的成员变量(属性)和成员方法(功能)对象的集合 2.接口的概念 接口是功能的集合,就是方法的集合 接口中只能定义方法,不能定义普通的成员变量 而且接口中的成员方法,必须是抽象 接口是比抽象类还抽象的一种类型 接口不能创建对象 通常叫"父接口" 3.接口的定义 定义类用关键字:class 定义抽象类用关键字:abstract class 定义接口关键字:interface 定义枚举用关键字:enum 格式: public interface 接口名字{ /成员变…
一.封装: 封装的概念: - 合理的隐藏:隐藏不想被外界操作的Field.方法.构造器 - 合理的暴露:一般就是希望给别人调用的方法 e.g:显示器(按键暴露出来操作,但实际的东西/细节方法被隐藏起来) 封装的目的: - 简化编程(不去去找显示器的内部调,直接按键调整即可) - 更好的保证对象的完整性 为了实现隐藏,我们有4个修饰符: private - 仅限当前类访问权限 无修饰符/默认  - 包访问权限(同一个包内) protected   - 子类访问权限(本类能访问.同一个包也能访问)…
多态的体现 父类的引用指向了自己的子类对象. 父类的引用也可以接受自己的子类对象. 代码体现 abstract class Animal { public abstract void eat(); } class Cat extends Animal { @Override public void eat() { System.out.println("eat fish"); } } class Dog extends Animal { @Override public void ea…
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 仔细想一想,Animal应该是一个抽象的概念,相对于Animal来说,狗才是具体的概念 // Animal的行为也应该算是一个抽象的行为 // Java中对于这些抽象的概念或是抽象的行为,提供了一个关键字 abstract 来进行修饰 // 关键字 abstract用在类上,类称为抽象类:abstract class…
1.不可改变的类生成对象以及变量的范围 2. 关键词this的使用 3.用类抽象的思想制作软件 4.通过关系模型建立类 5.使用面向对象的范例来设计程序,遵循类设计指导. 已经学习了:怎么定义类已经创建对象,还有就是通过Java API 来使用类. 1.不可变的类和对象 正常来说,我们使用类的时候都是为了生成一个对象,允许在以后更改对象的内容,但是有时候会要求不能改变他的内容.比如我们记录学生档案的时候,又或者是个人简历的时候,有些档案比如出生日期,一旦是确定的不会去更改,但是学历,工作经验会随…