Java变量按其作用域可分为:成员变量和局部变量.注意:在Java中是没有全局变量这个概念的 一.成员变量: 成员变量是在类中定义的变量,具体可分为类变量与实例变量--有无static修饰 实例变量的特点: 没有创建实例前是不会分配内存空间的: 从有实例开始,实例变量就存在了: 实例被销毁,实例变量就不存在了: 0~N个实例变量,程序每创建一个实例,系统就为该实例分配一块内存 类变量的特点: 从有类开始,类变量就存在了,一个JVM中类信息只要一个即可. 每个JVM最多只加载一个类一次,系统就为该…
Java学习笔记之---面向对象 (一)封装 (1)封装的优点 良好的封装能够减少耦合. 类内部的结构可以自由修改. 可以对成员变量进行更精确的控制. 隐藏信息,实现细节. (2)实现封装的步骤 1.  修改属性的可见性来限制对属性的访问(一般限制为private) private String sex; 2. 对每个值属性提供对外的公共方法访问,也就是创建一对赋取值方法,用于对私有属性的访问 public void setSex(String s){ this.sex=s; } public…
一.封装: 封装的概念: - 合理的隐藏:隐藏不想被外界操作的Field.方法.构造器 - 合理的暴露:一般就是希望给别人调用的方法 e.g:显示器(按键暴露出来操作,但实际的东西/细节方法被隐藏起来) 封装的目的: - 简化编程(不去去找显示器的内部调,直接按键调整即可) - 更好的保证对象的完整性 为了实现隐藏,我们有4个修饰符: private - 仅限当前类访问权限 无修饰符/默认  - 包访问权限(同一个包内) protected   - 子类访问权限(本类能访问.同一个包也能访问)…
面向对象(下) 类的继承 类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类称为子类,现有类称为父类,子类会自动拥有父类所有可继承的属性和方法.(用extends关键字)   //定义Animal类 class Animal{     String name;    //定义name属性     //定义动物叫的方法     void shout(){         System.out.println("动物发出叫声.");     } } //定义Dog类继承Ani…
一周Java学习总结 今天就总结理清一下关于面向对象和面向过程的程序设计的一些不同特点,以及讲下static关键字. 面向对象 现在接触的Java是面向对象的,现在的程序开发几乎都是以面向对象为基础的.我现在不看书,光靠回忆去想这个特性的解释性语言,只能想到看书时很深刻的一句话,面向对象就是一个更加具体描述一个事件的一种设计方法,就像在公司里面吃饭,面向对象的话就是一个总负责人即类似大厨准备好菜谱什么的,分工下去给下属,每个人负责一个菜,每个人按照自己的秘方去完成,最后总的做出来形成一桌满汉全席…
现在一般的语言都支持面向对象,而java更是将其做到很过分的地步,java是强制使用面向对象的写法,简单的写一个Hello Word都必须使用面向对象,这也是当初我很反感它的一点,当然现在也是很不喜欢它这一点.但是不得不说它设计的很优秀也很流行. 面向对象 面向对象一般是将一些独立有相似功能的模块封装起来组成一个类,然后调用者不必关注实现细节而只需要关注调用某个类方法即可.面向对象简化了程序设计.与之相对应的是面向过程,而C就是典型的面向过程的程序设计语言. 面向对象一般有3种特性:封装.继承.…
02面向对象-重写/this/super/抽象类 ****1.this和super 作用: this: 区分本类的成员变量和局部变量同名情况 super:区分父类的成员变量和局部变量同名情况 用法: this.成员变量名;//访问本类的成员变量 this.成员方法名();//调用本类成员方法(this可以省略) super.成员变量名;//访问父类的成员变量 super.成员方法名();//调用父类的成员方法(super不可以省略) 2.扩展: this(参数);//调用本类的其他构造,具体是哪…
01面向对象-继承 一.java中的数据类型 1.基本数据类型:四类 八种 byte(1) boolean(1) short(2) char(2) int(4) float(4) long(8) double(8) 2.引用数据类型 String , 数组,集合ArrayList,Scanner,Random,自定义类型 二.引用数据类型String中的方法(4532) 第一组:判断方法 boolean equals(String str);//比较两个字符串的内容是否相等 boolean eq…
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 仔细想一想,Animal应该是一个抽象的概念,相对于Animal来说,狗才是具体的概念 // Animal的行为也应该算是一个抽象的行为 // Java中对于这些抽象的概念或是抽象的行为,提供了一个关键字 abstract 来进行修饰 // 关键字 abstract用在类上,类称为抽象类:abstract class…
一.方法重载(Overload): Java允许同一个类中定义多个同名方法,只要形参不一样就可以,如果同一个类中包含了两个或两个以上方法名相同的方法,但形参列表不同,则被成为方法重载(两同一异). 同时这这里我们需要注意以下两点:  A.方法重载与返回值类型没有任何关系;  B.方法重载与是否有static修饰没有任何关系. 那我们如何才能确定到底调用的哪个方法呢?  A.主调者:明确是谁在调用这个方法,是类还是对象  B.方法名和形参:确定调用哪个方法(由方法名和形参共同决定) 例1: pub…