第八天 面向对象2和数组1

1.理解this表示当前对象

例子:连锁反应,(练习题)Boy类,Girl类,BoyGirlTest类;girl.marry(this);

2.栈是方法的执行位置,方法区是方法存储的位置

栈---------->进程 方法区------------->程序代码

3.对象和属性的关系

对象拥有属性,属性隶属于对象,属性依赖于对象。

4.※对象关联

(1)定义:一个对象拥有另外一个类的对象,持久的使用它;

(2)如何关联:在前者类中把另一个类的对象作为属性即可;属性意味着它就是成员,一旦作为属性,修改全参构造器,提供get/set方法,修改say()方法。

(3)对象关联99%的情况是通过构造器来完成的。

【※练习题】Person类,Phone类,PersonPhoneTest类。

5.JavaBean

(1)定义:用java语言编写的可重用的组件,可以携带批量数据,便于传递。

(2)特点:①类是公共的②有公共的无参构造器③有属性,且有相应的get/set方法。

6.关键字package

(1)格式:package 包名.子包名.子子包名.子子子包名;
(2)作用:告诉编译器,当前源文件中的类生成的.class文件要保存的包目录结构。
(3)模板:package 机构类型.机构名称.项目名称.模块名称;
(如:com.atguigu.javase.javabean)

【注意】一旦使用了包,就会有两个麻烦:

(1)在编译此文件时必须加上选项 -d 目标目录
javac -d . 源文件名
javac 空格 -d 空格 . 空格 源文件列表
(如:javac -d . Computer.java Teacher.java TeacherTest.java)
(2)如果在其他包的类中使用本类,必须使用此类的全限定名称(fully qualified name); 如果是测试类,在运行时也必须使用全限定类名:
(如:java com.atguigu.javase.test.TeacherTest)

7.关键字 import

全限定类名:所有包名.类名
简单类名:没有包的类名
格式:import 类的全限定名称;
作用:就是告诉编译器,当前类中使用的其他包的类去哪里找。
【注意】只有java.lang包下面的类可以自动导入,其他包都不行。

8.数组

(1)定义:一组相同类型的数据的集合,实现对这些数据的统一处理。
(2)任意数据类型都可以创建数组,数组是引用型,数组的数据是对象。
(3)数组声明:数组的元素的数据类型[ ] 数组名;
(4)数组创建:new 数组的元素的数据类型[元素个数];
(5)数组对象一旦创建,长度就不可以改变,元素数据类型也不能变。
(6)数组 == 循环
(7)NullPointerException是空指针异常,在引用为null的时候,仍然去调用它的成员,如果想要避免空指针,不要使用.号操作。
(8)对象数组中元素值为null的元素称为空洞,空洞很危险,极有可能引发空指针。
(9)数组的元素的访问必须通过 数组名(首地址)[偏移量或下标]方式来访问;数组的每个元素都可以作为普通变量来使用。

9.数组初始化

(1)动态初始化
(2)静态初始化

尚硅谷 day08 Java 面向对象 2 和数组 1

相关文章:

  • 2021-11-20
  • 2021-05-21
  • 2021-06-06
  • 2021-09-15
  • 2022-12-23
  • 2021-09-28
  • 2021-11-25
猜你喜欢
  • 2021-12-28
  • 2021-11-23
  • 2021-07-02
  • 2021-07-07
  • 2021-11-02
  • 2021-09-23
  • 2021-09-03
相关资源
相似解决方案