02-Java中的对象和类

面向对象:

  程序由对象构成,每个对象包含对用户公开的特定功能部分(public)和隐藏实现部分(private)。

类:

  构造对象的模板

对象:

  对象的行为 --- 可以对对象施加的操作(方法)

  对象的状态 --- 对象的域的值

  对象的表示 --- 行为相同,但状态不同的对象(equals()方法)

类之间的关系:

  依赖 --- 一个类中使用另一个类的对象

  聚合 --- 两个或两个以上的类组合成一个新的类

  继承 --- 一个类是另一个类的子类

更改器和访问器方法:

   JavaBean中是setter和getter方法。

   更改器用于更改目前对象的状态(对象域的值)

   访问器用于查看目前对象的状态(对象域的值)

用户自定义类:

  class   类名 {

    字段;

    方法;

  }

构造器:

  public   类名 (参数){

    语句;

  }

  1.构造器和类同名

  2.每个类可以有一个以上的构造器

  3.构造器可以有0个,1个,或多个参数

  4.构造器没有返回值

  5.构造器总是伴随着new关键字一起使用

隐式参数和显示参数:

  当字段和方法的参数名相同时,方法中默认使用的参数,使用字段时需要使用this.字段名区别于方法参数

封装(setter and getter 方法):

  使得对象的字段不能直接访问,提高安全性

  一个私有的数据域

  一个公共的域访问器

  一个公共的域更改器

私有方法:

  private 修饰的方法,对外部进行隐藏,不让外部对象直接访问,由类的方法自己调用,可以随意修改实现的方式。

final实例域:

  final修饰的字段,只可以赋值一次,当对象初始化之后便不能在修改。

静态域和静态方法:

  static关键字修饰的字段和方法,直接由类名访问,属于类所有。

  静态常量:  

    static final修饰的变量

  静态工厂方法:

    使用方法直接获取某个类的对象。

重载:

  方法名相同,参数列表不同

对象的初始化:

  1.默认初始化:基本数据类型中,数值型赋值为0或0.0,boolean类型赋值为false ,char类型赋值为/u0000,引用数据类型赋值为null

  2.显示初始化:在构造器中显示的给字段赋值

  3.调用另一个构造器:使用this(参数列表)来调用,this()方法必须位于构造方法的第一行

  4.初始化块:在类成员位置放置一个代码块{},其中对类的字段进行初始化

包:

  为啥使用包:确保类名的唯一性

  类的导入: import  包名.类名

  静态导入:导入包中的静态方法和静态变量等静态资源:    import   static 包名.类名.静态资源

  将包放入类中:package  包名

包的作用域:

  public修饰的方法和字段 ,所有的类都可以使用

  private修饰的方法和字段 ,只有本类可以调用

  protect修饰的方法和字段  , 同一个包中的类和继承的子类可以使用

  无修饰符的,只有同一个包中的类可以访问

类的设计技巧:

  1.一定要保证数据私有

  2.一定要对数据初始化

  3.不要在类中使用过多的基本数据类型

  4.不是所有的域都需要getter setter方法

  5.可以将过多功能的类分解成多个类

  6.类名和方法名尽量见名知意

  7.优先使用final修饰的类:不可变类。

  

  

 

  

原文地址:https://www.cnblogs.com/wlzg/p/10710910.html

时间: 2024-11-12 05:25:54

02-Java中的对象和类的相关文章

浅谈java中的对象、类、与方法的重载

对象: 一切皆为对象. 对象包括两部分内容:属性(名词形容词),行为(动词). 对象和对象之间是有关系的: 派生,关联,依赖. 类: 对同一类别的众多对象的一种抽象. 类,还是用来生成对象的一种模板,对象是类的一种具体化的表现. 面向对象的三大特性:封装,继承,多态. ? 1 2 3 4 class 类名{ 访问修饰符 成员变量的定义; 访问修饰符 成员函数(方法)的定义; } 访问修改符:默认不写,private,public. private,私有.只能被当前class 类名{}中的代码访问

Java中的基本操作单元 - 类和对象

Java中的基本操作单元 - 类和对象 文本关键字:类.属性.行为.实例化.对象 一.概念浅析 说到类和对象,这都是两个比较抽象的词,如果用在程序中,那就更不知道是什么意思了.其实大家可以先不联系程序,我们在对一大堆东西分类的时候自然是有一个标准的,符合某些特征的分到一类,符合另外一些特征的分到另外一类.在每个类别中,每一样东西都有相同的特征,但是又有所差别,每一样东西就好比一个一个的对象,是一个切切实实的东西,而分类的类别就好似是一个标准或者描述,会更抽象一些. 1. 类的概念 在编程中,我们

java中的日期处理类总结

转自 http://blog.csdn.net/shibenjie/article/details/4263912 java中的日期处理类总结:Date/Calendar/GregorianCalendar/DateFormat/SimpleDateFormat类 今天花了好大一点时间把java的日期类做了一下整理,哈 1.         Date类(该类现在很少用了) l         Date类对象的创建: n         创建一个当前时间 //默认是创建一个代表系统当前日期的Dat

Java中的对象序列化

好久没翻译simple java了,睡前来一发.译文链接:http://www.programcreek.com/2014/01/java-serialization/ 什么是对象序列化 在Java中,对象序列化指的是将对象用字节序列的形式表示,这些字节序列包含了对象的数据和信息,一个序列化后的对象可以被写到数据库或文件中,并且支持从数据库或文件中反序列化,从而在内存中重建对象: 为什么需要序列化 序列化经常被用于对象的网络传输或本地存储.网络基础设施和硬盘只能识别位和字节信息,而不能识别Jav

Java中字符串对象

Java中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new String("droid");,这两种方式我们在代码编写时都经常使用,尤其是字面量的方式.然而这两种实现其实存在着一些性能和内存占用的差别.这一切都是源于JVM为了减少字符串对象的重复创建,其维护了一个特殊的内存,这段内存被成为字符串常量池或者字符串字面量池. 工作原理 当代码中出现字

Java中的不可变类

本文与个人博客 zhiheng.me 同步发布,标题: Java中的不可变类. 不可变类(Immutable Objects):当类的实例一经创建,其内容便不可改变,即无法修改其成员变量. 可变类(Mutable Objects):类的实例创建后,可以修改其内容. Java 中八个基本类型的包装类和 String 类都属于不可变类,而其他的大多数类都属于可变类. 与引用不可变的区别 需要特别注意的是,不可变类的不可变是指该类的实例不可变而非指向该实例的引用的不可变. String s = "ab

浅谈Java中的对象和引用

浅谈Java中的对象和对象引用 在Java中,有一组名词经常一起出现,它们就是"对象和对象引用",很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然.今天我们就来一起了解一下对象和对象引用之间的区别和联系. 1.何谓对象? 在Java中有一句比较流行的话,叫做"万物皆对象",这是Java语言设计之初的理念之一.要理解什么是对象,需要跟类一起结合起来理解.下面这段话引自<Java编程思想>中的一段原话: "按照通

Java中计算对象的大小

一.计算对象大小的方法 Java中如何计算对象的大小呢,找到了4种方法: 1.java.lang.instrument.Instrumentation的getObjectSize方法: 2.BTraceUtils的sizeof方法: 3.http://yueyemaitian.iteye.com/blog/2033046中提供的代码计算: 4.https://github.com/mingbozhang/memory-measurer提供的工具包: 本质上java.lang.instrument

关于java中任意对象强制转换为接口类型的问题

java中任意对象强转为接口类型都不会有编译错误 public class Apple implements Eatable{ public static void main(String args[]) { Drinkable drinkable = (Drinkable)new Apple(); } } interface Eatable{} interface Drinkable{} java中的类可以多实现接口,Java编译器无法判断该类是否实现了该接口所以不会有编译错误. 但是Java

浅谈Java中的对象和对象引用

浅谈Java中的对象和对象引用 在Java中,有一组名词经常一起出现,它们就是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然.今天我们就来一起了解一下对象和对象引用之间的区别和联系. 1.何谓对象? 在Java中有一句比较流行的话,叫做“万物皆对象”,这是Java语言设计之初的理念之一.要理解什么是对象,需要跟类一起结合起来理解.下面这段话引自<Java编程思想>中的一段原话: “按照通俗的说法,每个对象都是某个类(class)的一个实