写点什么

没有对象怎么面向对象编程呢?真让人头秃!,sharedpreferences 跨进程

用户头像
Android架构
关注
发布于: 2021 年 11 月 06 日

熟悉面向对象设计模式 大概 23 中 常用的十来种


2、类与对象



什么是类?

1、类是:分类、类别。


2、通过分类,我们可以区别不同的事物种类,在日常生活当中,我们常常这样做。


3、所以,类是一组具有相同特性(属性)与行为(方法)的事物集合。 我们除了特征和 行为之外,还能通过其他的东西分类了,我们发现没有了!属性和行为好像就能把所有的东西都能分类了

类与对象的关系

1、类表示一个共性的产物,是一个综合的特征,而对象,是一个个性的产物,是一个个体的特征。


2、类由属性和方法组成:


· 属性:就相当于一个个的特征


· 方法:就相当于人的一个个的行为,例如:说话、吃饭、唱歌、睡觉


类就是类别分类,对象就是这个类里边的实例,比如男人这个分类,那我就是一个对象!再举个例子轩轩就是个对象,程序员就是类!程序员的属性就是头发少,钱多,话少,死的早!


3、类和对象的定义格式




在 Java 中可以使用以下的语句定义一个类:


class 类名称{


属性名称;


返回值类型 方法名称(){}


}


对象的定义: 一个类要想真正的进行操作,则必须依靠对象,对象的定义格式如下:


类名称 对象名称 = new 类名称() ;


按照以上的格式就可以产生对象了,我去...原来搞个对象那么容易哈..new 一下就一个对象啧啧啧


如果要想访问类中的属性或方法(方法的定义),则可以依靠以下的语法形式:


访问类中的属性:


对象.属性 ;


调用类中的方法:


对象.方法();


在 java 中对象声明有两种含义


声明对象:


Horse horse= null; ;


// 表示声明了一个对象,但是此对象无法使用,horse 没有具体的内存指向


实例化对象:


horse= new Horse() ;


// 表示实例化了对象,可以使用


//通过对象调用方法:


horse.eat()


//匿名对象调用方法:


new Horse().eat()


代码实例:


public class Test8{


public static void main(String[] args){


//类的使用


Horse h=null;//声明一个类的变量(变量 除了八种基本数据类型 都是引用类型,包括数组)


//创建一个 Horse 类型的对象 (实例化一个对象)


h=new Horse();


//有了对象,我们就可以调用对象的属性和方法


h.name="赤兔马";


h.age=350;


h.run();//调用方法 方法就被执行了


h.eat();


//匿名对象:只能使用一次 用完后就会被释放


new Horse().eat();


h=null;//把对象释放掉


// h.eat(); 当对象不存在时,调用改对象的方法和属性会报空指针异常


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


}


}


//自定义一个类(类型 引用类型) Horse 类


class Horse{


//在类中定义属性(特征)


String name;


int age;


//定义方法


public void run(){


System.out.println("我是"+name+",我"+age+"岁了,我还能日行千里");


}


public void eat(){


System.out.println("我吃仙草,还吃得多");


}


}


4、对象内存分析




1、new 关键字表示创建一个对象


2、new 关键字表示实例化对象


3、new 关键字表示申请内存空间


注意:如果使用一个没有申请内存空间的对象,会报空指针异常:java.lang.NullPointerException


对象在内存中的结构:


Horse horse= null;

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
没有对象怎么面向对象编程呢?真让人头秃!,sharedpreferences跨进程