您的位置 首页 java

java基础学习笔记(三)万物皆对象

上次说到 OOP 思维,这里简单做个介绍,与其他思维做个对比

OOA 面向对象分析方法( Object-Oriented Analysis

如:对人OOA

1、属性:年龄,性别,身份证,姓名

2、行为:走路,吃饭,跑步

OOD – 面向对象设计(Object-Oriented Design)

对OOA出来的对象进行设计,即:将各个OOA之间的联系关联起来

OOP-面向对象编程(Object Oriented Programming)

对OOD设计出来的对象之间的交互关系进行编码

  1. 封装:把客观的事物封装成类,包括数据和方法。封装把对象的设计者和对象的使用者分开,这样有助于提高类和系统的安全性。

  2. 继承:建立一个新的类,也就是派生类,继承原有的类的数据和方法,也可以重新定义或者添加数据和方法。

  3. 多态 :同一个操作作用于不同类中,将会产生不同的反应。也就是不同类的对象接收到相同消息时,将会得到不一样的结果。

用引用操作对象

Java 中一切都是被看作为对象,因此可以采用单一固定的语法。

尽管一切都看做对象,但操作的标示符实际上仅仅是对象的一个“引用”(reference)。

如果想操作一个字符串,则可以创建一个String 引用:

String s ;

但是这里创建的仅仅是引用,而不是对象。因此如果要操作s,这会返回错误。这是因为s实际上并没有与任何对象关联.

因此一种安全的做法就是:创建一个引用的同时便进行初始化.

String s = “abc”;

创建对象通常使用new操作符来实现:String s = new String(“qwer”);

永远也不需要销毁对象

作用域: 由花括号的位置决定,在作用域中定义的变量只可用于作用域结束之前。

对象的作用域:Java对象不具备和基本类型一样的生命周期。当使用new创建一个java对象时,它可以存活于作用域之外。

如:

{

String s = new String(“qwer”);

}

解析:

  1. 引用s在作用域终点就消失了,但是s指向的对象任然占据这内存空间。

  2. 我们无法在这个作用域之后访问这个对象,因为对它唯一的引用已经超出了作用域的范围。

java如何防止这些对象填满内存空间?

Java中有一个垃圾回收器,用来监视用new创建的所有对象,并辨别那些不会被再引用的对象。随后,释放这些对象占用的内存空间,以便提供给其他新的对象使用。

问:万物都是对象,如何描述对象的外观和行为,即属性和方法

答:创建新的数据类型 — 类

java中使用class关键字。如:

class Hello{

public static void main(String[] agrs){

Hello hello = new Hello();

}

}

利用类进行实例化: Hello hello = new Hello();

刚刚说外观和行为及属性和方法,如何定义呢?

class Dog {

int leg;

String color;

public Dog(int leg, String color) {

this.leg = leg;

this.color = color

}

public void run() {

println(“dog leg: ” + this.leg + “, color: ” + this.color + “, run quickly!”);

}

}

Dog dog1 = new Dog(4, “blue”);

dog1.run();

通过在类内部定义属性和方法,在实例化,或者单独赋值给予属性值

通过方法进行类/单个实例是执行某种动作

还有更多的类细节,在以后继续讲解~

文章来源:智云一二三科技

文章标题:java基础学习笔记(三)万物皆对象

文章地址:https://www.zhihuclub.com/193933.shtml

关于作者: 智云科技

热门文章

网站地图