HeadFirstJava——4_对象的行为
2016-07-02 14:24
218 查看
状态影响行为,行为影响状态。
1 方法参数和返回类型
方法可使用一个或多个参数;
传给方法的参数必须符合声明时的数量、顺序和类型;
传入和传出方法的值类型可以隐含地放大或明确地缩小;
传给方法的参数值可以使直接指定的文字或数字或与所声明参数相同类型的变量;
方法必须声明返回类型,使用void类型代表方法不返回任何东西;
方法只能声明单一的返回值;若需要返回多个相同数据类型的值,把返回类型说明为该数据类型的数组,将值装进数组中;若有不同数据类型的值,需要用到ArrayList。
2 值传递
Java是通过值传递,即通过拷贝传递,因此方法无法改变调用方所传入的参数。
3 Getter和Setter
Getter返回实例变量的值,Setter取一个参数来设定实例变量的值。
String getBrand(){
return brand;
}
void setBrand(String abrand){
brand=abrand;
}
4 封装
没有封装,则可通过圆点运算符对实例变量进行存取。
需要建立Setter方法设定所有实例变量,而不是直接存取;
Java中,使用共有和私有这两个存取修饰符;
封装的基本原则是将实例变量标记为私有,并提供公有的Getter和Setter方法控制存取动作。
5 实例变量与局部变量
5.1 实例变量
实例变量有默认值,整型的值为0,浮点型的值为0.0,布尔型的值为false,引用的值为null;。
5.2 局部变量
局部变量没有默认值。
5.3 区别
实例变量是声明在类内,局部变量声明在方法内;
局部变量在使用前必须初始化;
6 变量的比较
使用==比较两个primitive主数据类型,或判断两个引用是否引用同一个对象;
使用equals()判断两个对象是否在意义上相等。
Foo a = new Foo();
Foo b = new Foo();
Foo c = a;
if (a == b) { // false }
if (a ==c ) { // true }
if (b == c) { // false}
1 方法参数和返回类型
方法可使用一个或多个参数;
传给方法的参数必须符合声明时的数量、顺序和类型;
传入和传出方法的值类型可以隐含地放大或明确地缩小;
传给方法的参数值可以使直接指定的文字或数字或与所声明参数相同类型的变量;
方法必须声明返回类型,使用void类型代表方法不返回任何东西;
方法只能声明单一的返回值;若需要返回多个相同数据类型的值,把返回类型说明为该数据类型的数组,将值装进数组中;若有不同数据类型的值,需要用到ArrayList。
2 值传递
Java是通过值传递,即通过拷贝传递,因此方法无法改变调用方所传入的参数。
3 Getter和Setter
Getter返回实例变量的值,Setter取一个参数来设定实例变量的值。
String getBrand(){
return brand;
}
void setBrand(String abrand){
brand=abrand;
}
4 封装
没有封装,则可通过圆点运算符对实例变量进行存取。
需要建立Setter方法设定所有实例变量,而不是直接存取;
Java中,使用共有和私有这两个存取修饰符;
封装的基本原则是将实例变量标记为私有,并提供公有的Getter和Setter方法控制存取动作。
5 实例变量与局部变量
5.1 实例变量
实例变量有默认值,整型的值为0,浮点型的值为0.0,布尔型的值为false,引用的值为null;。
5.2 局部变量
局部变量没有默认值。
5.3 区别
实例变量是声明在类内,局部变量声明在方法内;
局部变量在使用前必须初始化;
6 变量的比较
使用==比较两个primitive主数据类型,或判断两个引用是否引用同一个对象;
使用equals()判断两个对象是否在意义上相等。
Foo a = new Foo();
Foo b = new Foo();
Foo c = a;
if (a == b) { // false }
if (a ==c ) { // true }
if (b == c) { // false}
相关文章推荐
- Struts项目中的相对路径和绝对路径
- Web.xml配置详解之context-param (加载spring的xml,然后初始化bean看的)
- java.lang.UnsupportedClassVersionError: Unsupported major.minor version 52.0
- Java的异常处理
- Spring MVC @PathVariable注解
- java基础/Scanner类/String类
- Java实现几种常见排序方法
- 关闭eclipse或MyEclipse的单词检查
- Java web工作原理
- Myeclipse2014安装反编译插件
- Spring处理id相同的bean
- Struts2的处理流程
- eclipse
- java.io.IOException: No space left on device
- 触摸java常量池
- 浅谈Java并发编程系列(二)—— Java内存模型
- 将JAVA文件从GBK转UTF8批量操作
- 【GOF23设计模式】_状态模式_UML状态图_酒店系统房间状态_线程对象状态切换JAVA250
- 在Eclipse中安装Zookeeper状态查看插件
- SpringMvc父子容器