javaSE学习笔记之面向对象程序设计(一)
2015-07-03 21:20
295 查看
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
2. 对象:对象是一种具体的概念,是类的一种具体表示方式。比如说人是一个类,而张三、李四、王五等具体的人就是对象。
3. 类所包含的内容,类一共包含两部分内容:
a) 数据,数据在类中称作属性(Property)或者叫成员变量(Membervariable)。
b) 对数据的操纵,这种操纵在类中称作方法(method) 。
4. 面向对象程序设计的三大基本特征:继承(Inheritence)、封装(Encapsulation)、多态(Polymorphism)。
5. 如何定义类?
修饰符 class 类的名字
{
//类的内容(包含了属性与方法)
}
6. 方法。如何定义方法?
修饰符 返回类型 方法名称([参数 1, 参数 2, 参数 3…])
{
//方法体
}
注意:
a) 方法定义不能嵌套,也就说不能在一个方法中定义另外一个方法。方法只能定义在类中。
b) 关于方法的执行:首先需要定义方法,接下来就可以使用方法(调用方法),当方法调用完毕后,方法可以返回值。方法到底是否返回值是由方法的定义决定的。
7. 如何生成对象?通过类来生成对象(通常使用 new 关键字来生成对象)。
publicclass Person
{
//类的内容
}
类名 变量名 = new 类名();
Personperson = new Person();
Personperson2 = new Person();
8. 方法调用需要通过对象来完成,方法调用的形式是:
对象变量.方法名([参数值 1, 参数值 2, 参数值 3….]);
9. 关于方法的注意事项:
1)在方法定义中,方法的返回类型与return 后面的变量或常量类型保持一致。
2)在方法调用时,给方法传递的参数需要与方法定义时的参数保持一致(参数个数一致,参数类型一致)。
3)方法定义时的返回类型与接收方法返回值的变量类型保持一致
10. 如果方法不返回值,那么声明方法的时候使用 void 关键字,在方法定义中可以有两种
情况实现不返回值:
a) 不使用 return 语句。
b) 使用 return,但 return 后面没有任何值或者变量, return 后面只有一个分号,表示退出方法,返回到方法的调用端。
使用方式:return;
11. 类中的属性又叫做成员变量(member variable),属性用英文表示为property
12. 对象(Object)又叫做实例(Instance)。生成一个对象的过程又叫做实例化。
13. 属性需要定义在类中,又叫做成员变量;而定义在方法中的变量叫做局部变量。
14. 如何定义属性?
public class Person
{
修饰符 类型 属性名称;
}
15. 如何使用属性?与方法一样,使用.运算符。首先需要生成类的实例,然后使用实例+” . ”的方式来使用属性。
比如:Person person = new Person(); person.age
16. 局部变量使用前必须要声明并赋初值;成员变量使用前必须要声明,但可以不赋初值。
17. 成员变量与局部变量的联系与区别:
a) 无论是成员变量还是局部变量,使用前都需要声明(定义)。
b) 对于局部变量来说,使用前必须要初始化;对于成员变量来说,使用前可以不初始化。如果没有初始化成员变量就开始使用,那么每个类型的成员变量都有一个默认的初始值:
i. byte、short、int、long 类型的初始值为 0
ii. float、double 类型的初始值为 0.0
iii. char 类型的初始值‘\u0000’
iv. boolean 类型的初始值为 false
18. 引用类型(reference type):引用类型是用在对象上的。一个对象可以被多个引用所指
向,但同一时刻,每个引用只能指向唯一的一个对象。如果一个对象被多个引用所指向,
那么无论哪个引用对对象的属性进行了修改,都会反映到其他的引用当中。
19. 如果一个类包含了属性与方法,那么该类的每一个对象都具有自己的属性,但无论一个类有多少个对象,这些对象共享同一个方法。
20. 关于方法参数传递的总结:对于 Java 中的方法参数传递,无论传递的是原生数据类型
还是引用类型,统一是传值(pass by value) 。
21. 什么类型的引用就能指向什么类型的对象,比如 People 类型的引用就能指向 People类型的对象,但不能指向 Student 类型的对象。比如:
People people =new People(); // 正确
People people =new Student(); //错误
22. 构造方法(Constructor) : 构造方法用于完成对象属性的初始化工作,构造方法的特点:
a) 构造方法的名字必须与类名完全一致(包含大小写)
b) 构造方法没有返回值,连 void 也不能出现。
c) 如果在定义一个类的时候,没有为类声明构造方法,那么 Java 编译器会自动为类添加一个没有参数且方法体为空的构造方法(默认的构造方法)
d) 如果在定义一个类的时候,为类声明了构造方法,那么 Java 编译器就不会再为类添加构造方法了。
e) 不能显式调用类的构造方法,构造方法通常是通过 new 关键字隐式调用。
5. new 关键字在生成对象时完成了三件事情:
a) 为对象开辟内存空间。
b) 调用类的构造方法。
c) 将生成的对象的地址返回。
23. 默认的构造方法:构造方法没有参数且方法体为空。
24. 使用 new 来生成对象的时候,后面的小括号()表示构造方法的参数列表,如果构造方法不接收参数,那么小括号中的内容为空;如果构造方法接收参数,那么小括号中的实 际参数就需要与构造方法定义中的形式参数保持一致 (参数数量一致、参数类型一致、按照顺序逐一赋值)
基本概念:
1. 类: 类是一种抽象的概念, 类中包含了数据(通常使用名词来表示) 与对数据的操纵 (通常使用动词来表示)。比如说人就是一种抽象的概念,人具有姓名、年龄、身高等数据,还有吃饭、跑步等操纵数据的动作.2. 对象:对象是一种具体的概念,是类的一种具体表示方式。比如说人是一个类,而张三、李四、王五等具体的人就是对象。
3. 类所包含的内容,类一共包含两部分内容:
a) 数据,数据在类中称作属性(Property)或者叫成员变量(Membervariable)。
b) 对数据的操纵,这种操纵在类中称作方法(method) 。
4. 面向对象程序设计的三大基本特征:继承(Inheritence)、封装(Encapsulation)、多态(Polymorphism)。
5. 如何定义类?
修饰符 class 类的名字
{
//类的内容(包含了属性与方法)
}
6. 方法。如何定义方法?
修饰符 返回类型 方法名称([参数 1, 参数 2, 参数 3…])
{
//方法体
}
注意:
a) 方法定义不能嵌套,也就说不能在一个方法中定义另外一个方法。方法只能定义在类中。
b) 关于方法的执行:首先需要定义方法,接下来就可以使用方法(调用方法),当方法调用完毕后,方法可以返回值。方法到底是否返回值是由方法的定义决定的。
7. 如何生成对象?通过类来生成对象(通常使用 new 关键字来生成对象)。
publicclass Person
{
//类的内容
}
类名 变量名 = new 类名();
Personperson = new Person();
Personperson2 = new Person();
8. 方法调用需要通过对象来完成,方法调用的形式是:
对象变量.方法名([参数值 1, 参数值 2, 参数值 3….]);
9. 关于方法的注意事项:
1)在方法定义中,方法的返回类型与return 后面的变量或常量类型保持一致。
2)在方法调用时,给方法传递的参数需要与方法定义时的参数保持一致(参数个数一致,参数类型一致)。
3)方法定义时的返回类型与接收方法返回值的变量类型保持一致
10. 如果方法不返回值,那么声明方法的时候使用 void 关键字,在方法定义中可以有两种
情况实现不返回值:
a) 不使用 return 语句。
b) 使用 return,但 return 后面没有任何值或者变量, return 后面只有一个分号,表示退出方法,返回到方法的调用端。
使用方式:return;
11. 类中的属性又叫做成员变量(member variable),属性用英文表示为property
12. 对象(Object)又叫做实例(Instance)。生成一个对象的过程又叫做实例化。
13. 属性需要定义在类中,又叫做成员变量;而定义在方法中的变量叫做局部变量。
14. 如何定义属性?
public class Person
{
修饰符 类型 属性名称;
}
15. 如何使用属性?与方法一样,使用.运算符。首先需要生成类的实例,然后使用实例+” . ”的方式来使用属性。
比如:Person person = new Person(); person.age
16. 局部变量使用前必须要声明并赋初值;成员变量使用前必须要声明,但可以不赋初值。
17. 成员变量与局部变量的联系与区别:
a) 无论是成员变量还是局部变量,使用前都需要声明(定义)。
b) 对于局部变量来说,使用前必须要初始化;对于成员变量来说,使用前可以不初始化。如果没有初始化成员变量就开始使用,那么每个类型的成员变量都有一个默认的初始值:
i. byte、short、int、long 类型的初始值为 0
ii. float、double 类型的初始值为 0.0
iii. char 类型的初始值‘\u0000’
iv. boolean 类型的初始值为 false
18. 引用类型(reference type):引用类型是用在对象上的。一个对象可以被多个引用所指
向,但同一时刻,每个引用只能指向唯一的一个对象。如果一个对象被多个引用所指向,
那么无论哪个引用对对象的属性进行了修改,都会反映到其他的引用当中。
19. 如果一个类包含了属性与方法,那么该类的每一个对象都具有自己的属性,但无论一个类有多少个对象,这些对象共享同一个方法。
20. 关于方法参数传递的总结:对于 Java 中的方法参数传递,无论传递的是原生数据类型
还是引用类型,统一是传值(pass by value) 。
21. 什么类型的引用就能指向什么类型的对象,比如 People 类型的引用就能指向 People类型的对象,但不能指向 Student 类型的对象。比如:
People people =new People(); // 正确
People people =new Student(); //错误
22. 构造方法(Constructor) : 构造方法用于完成对象属性的初始化工作,构造方法的特点:
a) 构造方法的名字必须与类名完全一致(包含大小写)
b) 构造方法没有返回值,连 void 也不能出现。
c) 如果在定义一个类的时候,没有为类声明构造方法,那么 Java 编译器会自动为类添加一个没有参数且方法体为空的构造方法(默认的构造方法)
d) 如果在定义一个类的时候,为类声明了构造方法,那么 Java 编译器就不会再为类添加构造方法了。
e) 不能显式调用类的构造方法,构造方法通常是通过 new 关键字隐式调用。
public class ConstructorTest { public ConstructorTest() { //default constructor System.out.println("test"); } public static void main(String[] args) { ConstructorTest test = new ConstructorTest(); } }
5. new 关键字在生成对象时完成了三件事情:
a) 为对象开辟内存空间。
b) 调用类的构造方法。
c) 将生成的对象的地址返回。
23. 默认的构造方法:构造方法没有参数且方法体为空。
24. 使用 new 来生成对象的时候,后面的小括号()表示构造方法的参数列表,如果构造方法不接收参数,那么小括号中的内容为空;如果构造方法接收参数,那么小括号中的实 际参数就需要与构造方法定义中的形式参数保持一致 (参数数量一致、参数类型一致、按照顺序逐一赋值)
public class ConstructorTest { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public ConstructorTest(String name, int age) { this.name = name; this.age = age; } public ConstructorTest() { } public static void main(String[] args) { ConstructorTest test = new ConstructorTest(); test.setName("李四"); test.setAge(20); System.out.println("我是"+test.getName()+"今年"+test.getAge()); ConstructorTest test2 = new ConstructorTest("张三",18); System.out.println("我是"+test2.getName()+"今年"+test2.getAge()); } }
相关文章推荐
- java方法的遗留问题:
- java也支持重载!
- Spring 从零开始-01
- Java中 equals 和 == 区别
- java总结(之七)--Java I/O系统
- Java内存区域详解
- java的main()方法:0
- java中AWT和SWing的区别与联系
- java的圆点运算符:.
- Spring定时器的配置
- JAVA学习参考链接收藏
- JAVA学习(四):Java流程控制语句(顺序结构、if条件语句、switch条件语句、循环语句与跳转语句)
- JAVA学习(四):Java流程控制语句(顺序结构、if条件语句、switch条件语句、循环语句与跳转语句)
- java深入解析-第1章 基本概念
- Scala Eclipse 找不到或无法加载主类
- JAVA制作jar包
- Android-Eclipse汉化
- java基础知识随笔--数组对象
- Java包导入eclipse注释乱码
- 【Spring之配置propertie资源文件】Maven整合spring profiles功能配置propertie资源文件更灵活、简单