19-2_16-张婷-学习笔记

方法操作实例变量:对象的行为

封装

1.封装是把过程和数据包围起来,对数据的访问只能通过已定义的接口。
面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
封装是一种信息隐藏技术,在java中通过关键字private,protected和public实现封装。

2.什么是封装?
封装把对象的所有组成部分组合在一起,封装定义程序如何引用对象的数据,封装实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度。

3.封装的好处:
适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性。
【1、2、3来源于:百度百科:封装

4.封装的基本原则: ①将实际变量标记为私有的(private) ②提供公有的getter与setter来控制存取动作,既将getters与setters标记为public

5.例:

class GoodDog{
private int size;
//将实际变量设定为private的
public int getSize(){
return size;
}
public void setSize (int s) {
size=s;
}
//将getter与setter设定为public的
void bark( ) {
if(size>60) {
System.out.println("Wooof!Wooof!");
}else if (size>14){
System.out.println("Ruff!Ruff!");
} else {
System.out.println("Yip!Yip!");
}
}
}

6.任何有值可以被运用到的地方,都可用调用的方法来取得该类型的值。
例:int x=3+24;→int x=3+ont.getSize();

class GoodDogTestDrive{
 public static void main (String[] args {
 GoodDog one=new GoodDog();
 one.setSize(70);
 GoodDog two = new GoodDog();
 two.setSize(8);
 System.out.println("Dog one:"+ one.getSize());
 System.out.println("Dog two:"+ two.getSize());
 one bark;
 two bark:
 }
 }

数组中的对象行为

数组中的对象就如同其他的对象一样,唯一的差别就是如何取得。1.例:
①声明一个装在7个Dog引用的Dog数组。
Dog[] pets;
pets=new Dog[7];
图片10
②创建两个Dog对象并赋值为数组的前两项元素。
pets[0]=new Dog();
pets[1]=new Dog();
③调用这两个Dog对象的方法。
pets[0].setSize(30);
int x=pets[0].getSize();
pets[1].setSize(8);

图片11

setSize:定义组件的大小,使其宽度为 width,高度为 height。

getSize:getSize()应该是一个函数,它的返回值是一个复合类型,这个类型可能是个类,也可能是个结构体,这个类型里有两个属性:width和height,所以getSize()是得到一个数据体,getSize().height,就是得到该数据体中的height属性,getSize().width道理相同
来源:百度知道

初始化实例变量

1.实例变量永远都会有默认值。如果没有明确赋值给实际变量,或者没有调用setter,实例变量还是会有值。

2.实例变量与局部变量之间的差别:
①实例变量是声明在类内而不是方法中。
class Horse{
private double height=15.2;
private String breed;
//more code…
}
②局部变量是声明在方法中的。
class Addthing{
int a;
int b=12;
public int add(){
int total=a+b;
return total;
}
}
③局部变量在使用前必须初始化。
class Foo{
public void go(){
int x;
int z=x+3;
//x无法编译,因为x没有值
}
}
④局部变量没有默认值,如果在变量被初始前就要使用的话,编译器会显示错误。

3.方法参数基本上与局部变量是相同的,它们都是在方法中声明的,但方法的参数相较于实例变量来说也是局部的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值