面向对象封装 续2

转载 2015年07月08日 16:52:35
1.  如果一个类包含了属性与方法,那么该类的每一个对象都具有自己的属性,但无论一个
类有多少个对象,这些对象共享同一个方法。 
2.  关于方法参数传递的总结:对于 Java 中的方法参数传递,无论传递的是原生数据类型
还是引用类型,统一是传值(pass by value)。 
3.  什么类型的引用就能指向什么类型的对象,比如 People 类型的引用就能指向 People 类
型的对象,但不能指向 Student 类型的对象。比如: 
 
People people = new People(); //  正确 
People people = new Student(); //错误 
 
4.  构造方法(Constructor):构造方法用于完成对象属性的初始化工作,构造方法的特点: 
a)  构造方法的名字必须与类名完全一致(包含大小写) 
b)  构造方法没有返回值,连 void 也不能出现。 
c)  如果在定义一个类的时候,没有为类声明构造方法,那么 Java 编译器会自动为类
添加一个没有参数且方法体为空的构造方法(默认的构造方法) 
d)  如果在定义一个类的时候,为类声明了构造方法,那么 Java 编译器就不会再为类
添加构造方法了。 
e)  不能显式调用类的构造方法,构造方法通常是通过 new 关键字隐式调用。 
5.  new 关键字在生成对象时完成了三件事情: 
a)  为对象开辟内存空间。 
b)  调用类的构造方法。 
c)  将生成的对象的地址返回。 
6.  默认的构造方法:构造方法没有参数且方法体为空。 
7.  使用 new 来生成对象的时候,后面的小括号()表示构造方法的参数列表,如果构造方法
不接收参数,那么小括号中的内容为空;如果构造方法接收参数,那么小括号中的实际
参数就需要与构造方法定义中的形式参数保持一致(参数数量一致、参数类型一致、按

照顺序逐一赋值)。 


例子:

public class ParamTest
{
public static void main(String[] args)
{
Person person = new Person();


person.change(person);


int age = person.age;


System.out.println(age);


System.out.println("--------------------------");


int i = 10;


person.change2(i);


System.out.println(i);
}
}


class Person
{
int age = 20;


public void change(Person person)
{
person = new Person();

person.age = 30;
}


public void change2(int age)
{
age = 40;
}
}

相关文章推荐

面向对象高级续2(instanceof关键字、抽象类和接口的应用、Object类、包装类)

具体内容 在java中可以使用instanceof关键字判断一个对象到底是哪个类的实例。 ·对象 instanceof 类   - ->返回boolean类型;代码如下: class A{ /...

面向对象基础续2(static关键字、理解main方法、代码块、构造方法私有化(单例模式)) .

static关键字如果现在希望一个属性被所有对象所共同拥有,则可以将其声明为static类型,声明static类型的属性或方法之后此属性或方法也成为类方法,可以由类型直接调用。使用static声明属性...

cocos2dx-lua中实现面向对象的封装继承

class函数是在"cocos2d-x-3.2/cocos/scripting/lua-bindings/script/extern.lua"中定义的。 -- Cre...

OC面向对象的三大特征(封装 继承 多态)习题2 复合

复合:一个类中有一个成员变量是另外一个类的对象。

面向对象的javascript系列文章(2)封装——信息隐藏

封装是为了实现在分析层面分离关注点的行为,目的是为了达到信息隐藏。 一、封装是分离关注点的一种实现方式   对于一个复杂的系统来说,经过抽象之后,可以清楚的看到一个层次结构。对于每一层的...

JAVA——(2)OOP面向对象、封装、继承、多态、this、构造方法

OOP JAVA是一种面向对象的语言,面向对象三大特性就是封装,继承,多态。 一、类和对象 1、OOP:Object Oriented Programming(面向对象编程): 2、类:具有一定特征的...

黑马程序员------面向对象(No.2)(封装、构造函数、构造代码块、this)

---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------    封装(Encapsulat...

黑马程序员——Java基础---面向对象(封装、构造函数)(2)

-----------android培训、java培训、java学习型技术博客、期待与您交流!------------                        &#...

【java基础】--(2)面向对象特征之概念、封装、继承

1、面向对象: 将事物抽象成类和对象,由于对象具有自己的状态和行为,程序通过对象对消息的反映来完成特定的任务。 2、封装 2.1、定义: 隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)