类 对象和包

	面向对象:围绕的是我这个软件是由哪些部分完成的,或者说是由那些对象来做的。
	属性是指对象身上有什么值数据;其形式就是变量属性和常量属性。
	变量属性:声明语法采用的是变量语法,只是比之前的普通变量一个访问修饰符。
 在效果上,该类所有的对象都会自动具备该属性,但是各个对象可以有不同的值
	常量属性:声明语法采用的是常量的语法,也只是多了访问修饰符。
 在效果上,该类所有的对象都会自动具备该属性,只是值都一样,且不能更改。	

	面向过程:我要解决问题,我要做那些事情,它的完成流程是怎样的。就问题解决问题。
编码
编写类、产生、对象、调用、操作对象
	操作对象属性:值数据{姓名,身高,体重}
		行为:做什么事情{吃,唱..........}
对象因关注而产生 
类是对象的抽象,对象是类的实例
类是具有相同属性和行为的一组对象的集合
在软件系统中,我们用类来模拟现实生活中的实体。
文件名必须与公用类的类名相同,文件扩展为“.java”。

行为:在语法表象上,就是方法的定义。
它是类的组成部分,表示对象能够做声明事情或者提供声明功能。
在面向对象中,static是一种特殊情况,90%的方法都是没有static的。

定义类的本质就是在定义一种数据类型。
类可以是一种比基本数据复杂的多的数据类型,它由属性和行为组成。
属性可以是多个,而且有各的数据类型;
行为是类自带的方法,可以直接完成各种属于该类的对象的操作。

数属性的默认初始值:基本数据类型为0,引用数据类型为null。

数据类型 变量名 --只会内存一个4字节的变量,
这个变量存放即将要指向真正的数据类型对象的引用。
所以又称为“对象名空间”。
new 数据类型()—这才会产生一个新的数据类型对象,
该对象具备一个整体的空间存放各个属性,
此空间的大小由对象身上的属性的大小总和决定。

产生对象的语法,使用new关键字,后面跟上 类名()

类和对象的关系
类是模板,不能直接使用;对象才是具体的实体存在的,所以对象又被称之为某个类的”实例“。
通过类产生的动作被称之为”实例化“。

操作对象----(属性和方法):对象假”.“操作符
”.“操作符在理解的时候把它理解为”的“字。

NullpointerException—空指针异常-----企图调用一个空对象的属性和方法。

对象的销毁
对象的销毁是由java中的垃圾回收机制(GC)来完成的。
它有其自身的算法规则,程序员是没有办法通过代码控制它什么时候回收,回收谁。
在垃圾回收的众多算法中有一条基本规则:它会自动回收没有引用指向的对象。
所以:
1、如果想让某个对象在程序中途回收,那么我们可以主动的把它指向的引用赋值为null。
2、如果对象的引用变量时(对象名空间)是个局部变量,那么当它所属的模块执行结束,
这个变量的生命周期就到头了,变量会消失,那么它所指向的对象也就没有引用指向了,也会被回收。
3、程序员在代码级别只有一句代码可以和垃圾回收之间产生交集,System.gc();
注意:这句代码的作用是主动调用垃圾回收,而是召唤垃圾回收,但是垃圾收集器想不想做,什么时候做,
收那些垃圾还是由它自身的算法决定。

new Student().age=30;
如果一个对象只用一次,那么可以不给该对象起变量名,new出来就直接使用,用完过后由于没有引用,就会被回收。

访问修饰符一共三个关键字,四种情况。
现在我们只掌握两种:public(公共的),private(私有的)
public 修饰的属性或方法,可以在任意位置访问。
private 修饰的属性或方法,可以在本类中访问。

变量属性基于java的官方规范,应该定义为private,然后提供get/set方法,让外部操作取值/赋值
get方法被称之为:访问器
set方法被称之为:修改器

两者在格式和命名上,都有标准规范。

private String name;

private int age;

public void setName(String name){

name=name;

}

public void setAge(){

}

//当全局变量(属性)和局部重名的时候,会默认使用局部变量。
//在这种情况下,要特指全局变量(当前类的对象),需要在全局变量前面+”this.“操作。
//此时的this相当于生活中每个对象说的“我”,指的是当前对象。
//好处:在开发中,"this."会有提示,可以提高开发效率。
//不考虑什么时候加this. 什么时候不加。
//建议:凡是访问本类中当前的属性和行为时,都养成写this.的习惯。

Arrays.tostring( )//输出数组用的,括号里面写数组名。

对象调用类的方法,

对象名.方法名();实参要和形参保存一致

引用数据类型

基本类型 字节长度

byte 1

short 2

int 4

long 8

float 4

double 8

char 2

boolean jvm决定

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值