1.面向对象学习的三条主线:

  • 1.Java类及类的成员:属性、方法、构造器;代码块、内部类
  • 2.面向对象的大特征:封装性、继承性、多态性、(抽象性)
  • 3.其它关键字:this、super、static、final、abstract、interface、package、import等
  • “大处着眼,小处着手”

2.面向对象与面向过程(理解)

1.面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做。
2.面向对象:强调具备了功能的对象,以类/对象为最小单位,考虑谁来做。

举例对比:人把大象装进冰箱。

3.完成一个项目(或功能)的思路:

4.面向对象中两个重要的概念:

类:对一类事物的描述,是抽象的、概念上的定义
对象:是实际存在的该类事物的每个个体,因而也称为实例(instance)

面向对象程序设计的重点是类的设计
设计类,就是设计类的成员。

二者的关系:
对象,是由类new出来的,派生出来的。

5.面向对象思想落地实现的规则一

  • 1.创建类,设计类的成员
  • 2.创建类的对象
  • 3.通过“对象.属性”或“对象.方法”调用对象的结构

补充:几个概念的使用说明

  • 属性 = 成员变量 = field = 域、字段
  • 方法 = 成员方法 = 函数 = method
  • 创建类的对象 = 类的实例化 = 实例化类

6.对象的创建与对象的内存解析

典型代码:
Person p1 = new Person();
Person p2 = new Person();
Person p3 = p1;//没有新创建一个对象,共用一个堆空间中的对象实体。
说明:
如果创建了一个类的多个对象,则每个对象都独立的拥有一套类的属性。(非static的)
意味着:如果我们修改一个对象的属性a,则不影响另外一个对象属性a的值。

内存解析:

7.匿名对象:我们创建的对象,没显式的赋给一个变量名。即为匿名对象

特点:匿名对象只能调用一次。
举例:
new Phone().sendEmail();
new Phone().playGame();

 new Phone().price = 1999;new Phone().showPrice();//0.0

应用场景:
PhoneMall mall = new PhoneMall();

//匿名对象的使用
mall.show(new Phone());
其中,
class PhoneMall{
public void show(Phone phone){
phone.sendEmail();
phone.playGame();
}

}

8.理解"万事万物皆对象"

1.在Java语言范畴中,我们都将功能、结构等封装到类中,通过类的实例化,来调用具体的功能结构

  •  >Scanner,String等
    
  •  >文件:File
    
  •  >网络资源:URL
    

2.涉及到Java语言与前端Html、后端的数据库交互时,前后端的结构在Java层面交互时,都体现为类、对象。

9、jvm内存结构

编译完源程序以后,生成一个或多个字节码文件。
我们使用JVM中的类的加载器和解释器对生成的字节码文件进行解释运行。意味着,需要将字节码文件对应的类加载到内存中,涉及到内存解析。

《JVM规范》

虚拟机栈,即为平时提到的栈结构。我们将局部变量存储在栈结构中
堆,我们将new出来的结构(比如:数组、对象)加载在对空间中。补充:对象的属性(非static的)加载在堆空间中。
方法区:类的加载信息、常量池、静态域

java类与对象 —(10)相关推荐

  1. java类与对象实验_JAVA类与对象实验报告

    <JAVA类与对象实验报告>由会员分享,可在线阅读,更多相关<JAVA类与对象实验报告(6页珍藏版)>请在人人文库网上搜索. 1.面向对象程序设计实验报告实验三.类与对象(1) ...

  2. 杨校老师课堂之Java类与对象、封装、构造方法

    杨校老师课堂之Java类与对象.封装.构造方法 本篇文章内容如下: 面向对象 类与对象 三大特征--封装 构造方法 教学目标 能够理解面向对象的思想 能够明确类与对象关系 能够掌握类的定义格式 能够掌 ...

  3. java类和对象程序_Java类与对象程序设计基础

    Java类与对象程序设计基础 一.实验目的: 通过编制一个独立应用程序,使得学生掌握Java的系统所提供类的引用方法:通过编制一个完整的应用程序,使得学生对Java的应用程序的基本构成和基本算法熟练掌 ...

  4. 解析 Java 类和对象的初始化过程

    跳转到主要内容 中国 [ 选择 ] dW 全部内容--------------  AIX and UNIX  Info Mgmt  Lotus  Rational  WebSphere-------- ...

  5. 【Java】第7章 Java 类和对象 头歌Educoder实训作业(七)

    第1关:练习-Java类和对象之类的声明之复数运算 任务描述 本关任务:求两个复数相加后的结果. 两个复数之间相加的运算法则:实部与实部相加,虚部与虚部相加. 关于复数的定义,可以自行查阅,本实训不做 ...

  6. java 类与对象实验报告_java类与对象实验报告

    java类与对象实验报告 西 安 邮 电 大 学(计算机学院)课内实验报告实验名称: 类与对象 专业名称: 计算机科学与技术班 级: 计科1405班 学生姓名: 高宏伟 学 号: 04141152指导 ...

  7. JAVA类和对象(1)

    JAVA类和对象 1.类和对象的初步认识 2.类的实例化 3.类的成员 3.1 字段/属性/成员变量 3.2 null 3.3 引用的指向 3.3 方法 (method) 3.4 static关键字 ...

  8. java 类与对象、封装、构造方法

    java 类与对象.封装.构造方法 面向对象 类与对象 三大特征--封装 构造方法 第1章 面向对象思想 1.1 面向对象思想概述 概述 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种 ...

  9. 从Java类到对象的创建过程都做了些啥?内存中的对象是啥样的?

    转载自   从Java类到对象的创建过程都做了些啥?内存中的对象是啥样的? 先回顾一下Java程序执行的过程: Java程序执行时,第一步系统创建虚拟机进程,然后虚拟器用类加载器Class Loade ...

  10. java类与对象 演练 查找并修改姓名

    java类与对象 演练 查找并修改姓名 视频 https://www.ixigua.com/i6870489659168784903/ 思路 先定义一个类 类中有一个名字数组 提前给这个数组一些默认值 ...

最新文章

  1. 6月27日任务 配置Tomcat监听80端口、配置Tomcat虚拟主机、Tomcat日志
  2. python编辑时怎样换行_python怎么换行输入
  3. window7连接其他计算机的打印机,win7系统电脑怎样连接其它电脑上在打印机?
  4. 【git 基础】detached HEAD意义详解 (非顶端分支的理解)
  5. Qt C/C++统计运行时间
  6. iPhone SDK开发基础之 OpenFlow编程
  7. 走迷宫(三):在XX限制条件下,是否走得出。
  8. linux 查看nginx,php-fpm运行用户及用户组
  9. 几个支持 FreeSWITCH 的网络电话的安装与使用(linphone、MicroSIP、Sipdroid)
  10. PRML Chapter01 练习题Exercise
  11. R语言数据接口(下载、读取、写入)
  12. i510200h和i78750h哪个好?有什么区别
  13. 利用百度身份证识别服务和python语言实现身份证信息的提取和保存
  14. Win10无法调节亮度解决方法
  15. 分享几张与互联网相关的搞笑图片
  16. C#.NET程序尝试—修复Excel批注错误
  17. DANN:Unsupervised Domain Adaptation by Backpropagation
  18. Virtualbox识别U盘 USB设备 USB 2.0 USB 3.0识别
  19. STP生成树协议详情
  20. 资料分享|基于SHT11的简易温湿度检测仿真

热门文章

  1. 【个人网盘-updog】使用updog建立个人网盘,so easy
  2. cnn卷积神经网络应用_卷积神经网络(CNN):应用的核心概念
  3. 使用doxygen和latex生成PDF文件
  4. 人工智能、机器学习、深度学习和神经网络的区别
  5. 贷款杠杆为什么非去不可?危险比你想象的要恐怖
  6. 收入和贷款有什么关系?
  7. 故乡与文学:一场别开生面的跨年代文学对话(一)
  8. 不同时期的同学的聚会
  9. 单片机小白学步系列(十二) Proteus仿真软件简介
  10. mtk一键usb驱动_三菱MRJEB驱动器报错,导致报错原因37.1参数设置范围异常?