Java学习二(面向对象)day010

day10

1.内存管理
    1)堆:
        1.1)存储new出来的对象
        1.2)垃圾:没有任何引用所指向的对象
               垃圾回收器(GC)不定时到内存中清扫垃圾
               回收过程是透明的(看不到的),不一定一发现垃圾就立刻回收
               调用System.gc()可以建议虚拟机尽快调度GC来回收垃圾
        1.3)实例变量的生命周期
                创建对象时存在堆中,对象被回收时一并被回收
        1.4)内存泄露:不再使用的对象还没有被及时回收
                建议:不再使用的对象及时将引用设置为null
    2)栈:
        2.1)正在调用的方法中的局部变量(包括方法的参数)
        2.2)调用方法时,在栈中为该方法分配一块对应的栈帧,
               栈帧中存储方法中的局部变量(包括方法的参数).
               方法调用结束时,栈帧被清除,局部变量一并被清除
        2.3)局部变量的生命周期:
                方法调用时存在栈中,方法结束时与栈帧一并被清除
    3)方法区:
        3.1)存储.class字节码文件(包括方法、静态变量)
        3.2)方法只有一份,通过this来区分具体的访问对象

面向对象三大特征:

1.封装:
    1)类:封装的是对象的属性和行为
    2)方法:封装一段特定的业务逻辑功能
    3)访问控制修饰符:封装的是具体的访问权限
2.继承:
    1)作用:代码复用
    2)超类:所以派生类所共有的属性和行为
        接口:部分派生类所共有的行为
        派生类:派生类所特有的属性和行为
    3)单一继承、多接口实现,传递性
3.多态:
    1)行为多态(所有抽象方法都是多态的)
        对象多态(所有对象都是多态的)
    2)向上造型、强制类型转换、intstanceof
    3)多态的表现形式:
        3.1)重写:根据对象的不同来多态
        3.2)重载:根据参数的不同来多态 

原文地址:https://www.cnblogs.com/lj-6112/p/8678206.html

时间: 2024-10-15 06:19:54

Java学习二(面向对象)day010的相关文章

Java学习二(面向对象)day03

day03 1.引用类型数组 1)先声明后赋值 Student[] stus = new Studenr[3]; stus[0] = new Student("zhangsan",25,"LF"); stus[1] = new Student("lisi",26,"JMS"); stus[2] = new Student("wangwu",27,"SD"); stus[1].age =

Java学习:二 基础

2014 - 5 - 22 上午 Java对大小写敏感. 点号(.)用于调用方法,Java的能用语法是: object.method(parameters); Java中的常量声明使用final关键字.且仅能赋值一次.习惯上,常量名大写. 可使用static final 定义一个类常量,以便在一个类中的多个方法中使用. 类常量定义在main方法外部,以便同一类其它方法可以使用.若使用public关键字,则其它类的方法也可以使用此常量. 字符串: Java中,允许使用+号拼接两个字符串. Java

Java学习(一)--面向对象(一)

面向对象的思想一直指导者我们软件的分析.设计与开发.java语言是一种面向对象的语言,在学习java之前,先回顾一下面向过程和面向对象. 一面向过程 面向过程主张按功能来划分系统需求,每个功能都负责对数据进行一次处理,每个功能都接受一些数据.它最小的单位是函数,每个函数负责完成一个功能,整个系统由一个个函数组成,其中有一个主函数,作为程序的入口,主函数依次调用其他普通函数,普通函数之间依次调用,从而完成整个软件系统的功能,其实就是主函数负责把系统中的所有函数"串起来". 从上面的图中我

Java学习之面向对象二

###01继承的概述 *A:继承的概念 *a:继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系 *b:在Java中,类的继承是指在一个现有类的基础上去构建一个新的类, 构建出来的新类被称作子类,现有类被称作父类 *B:继承关系的子类特点 *a:子类会自动拥有父类所有非private修饰的属性和方法 ###02继承的定义格式和使用 *A:继承的格式 class 子类 extends 父类 {} *B:雇员(Employee)与研发部员工(Developer)案例: *cn

Java学习 · 初识 面向对象基础二

Package 为什么需要使用package a)   解决类重名的问题 b)   便于管理类 怎么使用package a)   类的第一句非注释性语句 b)   命名:域名倒着写,再加上模块名 注意事项 a)   不要使用默认包 JDK主要包 Import 1.为什么需要使用包 2.import怎么使用 3.注意事项 4.静态导入 原文地址:https://www.cnblogs.com/secoding/p/9495903.html

Java学习之面向对象一

1 面向对象 1.1     理解什么是面向过程.面向对象 面向过程与面向对象都是我们编程中,编写程序的一种思维方式. l  面向过程的程序设计方式,是遇到一件事时,思考"我该怎么做",然后一步步实现的过程. 例如:公司打扫卫生(擦玻璃.扫地.拖地.倒垃圾等),按照面向过程的程序设计方式会思考"打扫卫生我该怎么做,然后一件件的完成",最后把公司卫生打扫干净了. l  面向对象的程序设计方式,是遇到一件事时,思考"我该让谁来做",然后那个"

Java学习之面向对象(概念性质) <好程序员特训营>

<A href="http://www.goodprogrammer.org/" target="blank">android培训</a>------我的java笔记,期待与您交流! 1.面向对象:三个特征:封装,继承,多态 2.开发过程:其实就是找对象使用.没有对象,就创建一个对象 3.类和对象的关系. 现实生活中的对象:张三 李四. 想要描述:提取对象中共性内容.对具体的抽象. 描述时:这些对象的共性有:姓名,年龄,性别,学习java功能

java学习之面向对象(4)

之前介绍了java面向对象三大特性之一封装,现在来说说三大特性之一继承和抽象类.这些只是我个人的认识,不足之处还请见谅. 1. 继承是面向对象的三大特征之一,那么何为继承呢? 继承是指一个对象直接使用另一个对象的属性与方法,是通过extends关键字让类与类之间产生继承关系.而被继承的类称为父类,继承父类的类称为子类(派生类). //父类 class Animal { //如果属性需要被子类继承,那么可以使用protected关键字,方法也一样 protected String name; pr

Java学习(二)--java概述

一 发展 看了java的发展史,发现他的发展充满了戏剧性.它没有经过精心的策划.制作,但是它的产生却具有了划时代的意义,一切的形成都好像顺利成章,又充满了传奇. 1990年,sun公司准备为下一代只能家电编写通用控制系统.因为C++的api存在的问题,创造了一种新的语言oak. 1992年,在其竞争机顶盒平台倡议中,因其过分给用户控制权而落选.否极泰来,在这里得到了最好的验证,再坚持一点点.下一个一点点就是转机. 1994年,互联网和浏览器的出现给oak带了希望.进过调整后,着眼于浏览器方法.更