面向对象:

  程序由对象构成,每个对象包含对用户公开的特定功能部分(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修饰的类:不可变类。

  

  

 

  

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

  1. 关于Java中的对象、类、抽象类、接口、继承之间的联系

    关于Java中的对象.类.抽象类.接口.继承之间的联系: 导读: 寒假学习JavaSE基础,其中的概念属实比较多,关联性也比较大,再次将相关的知识点复习一些,并理顺其中的关系. 正文: 举个例子:如果 ...

  2. java中的对象和类

    1.类:类是一个模板,它描述一类对象的行为和状态. 一个类可以包含以下类型变量: 局部变量:在方法.构造方法或者语句块中定义的变量被称为局部变量.变量声明和初始化都是在方法中,方法结束后,变量就会自动 ...

  3. java中的对象、类、包、模块、组件、容器、框架、架构的概念入门

    在Java中有那么一些概念:对象.类.包.模块.组件.容器.框架.这些概念都有一个共同的特点,就是[容纳]. 对象(Object) 在Java的世界里,对象是通过属性和方法来分别对应事务所具有的静态属 ...

  4. Java中的对象、类、抽象类、接口的理解

    1.对象 对象是个具体的东西,有着明确的属性特征和行为特征. 例如:你手上牵着的女朋友或男朋友就是个具体的对象. 如图中的苏格兰折耳猫,特征是耳朵向下呈折叠状,有着具体的颜色(你看到的颜色),并且和其 ...

  5. java中的对象,类。与 方法的重载。

    对象: 一切皆为对象.对象包括两部分内容:属性(名词形容词),行为(动词).对象和对象之间是有关系的: 派生,关联,依赖. 类: 对同一类别的众多对象的一种抽象.类,还是用来生成对象的一种模板,对象是 ...

  6. Java中直接输出一个类的对象

    例如 package com.atguigu.java.fanshe; public class Person { String name; private int age; public Strin ...

  7. 将java中Map对象转为有相同属性的类对象(json作为中间转换)

    java中Map对象转为有相同属性的类对象(json作为中间转换) 准备好json转换工具类 public class JsonUtil { private static ObjectMapper o ...

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

    浅谈Java中的对象和对象引用 在Java中,有一组名词经常一起出现,它们就是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然.今天我们就来一起 ...

  9. 【译】Java中的对象序列化

    前言 好久没翻译simple java了,睡前来一篇. 译文链接: http://www.programcreek.com/2014/01/java-serialization/ 什么是对象序列化 在 ...

  10. java中直接打印对象

    java中直接打印对象,会调用对象.toString()方法.如果没有重写toString()方法会输出"类名+@+hasCode"值,hasCode是一个十六进制数 //没有重写 ...

随机推荐

  1. Dubbo 源码分析 - 服务调用过程

    注: 本系列文章已捐赠给 Dubbo 社区,你也可以在 Dubbo 官方文档中阅读本系列文章. 1. 简介 在前面的文章中,我们分析了 Dubbo SPI.服务导出与引入.以及集群容错方面的代码.经过 ...

  2. Android6.0以上关于RecyclerView显是不全的问题

    Android6.0以上关于RecyclerView显是不全的问题 需求描述 适配的时候发现Android 6.0以上,RecyclerView显示不全,以下是没有问题的.这个时候查看布局文件,可以看 ...

  3. HTML5与CSS3权威指南笔记案例1

    第1章 <!DOCTYPE html> <meta charset = "UTF-8"> <title> Search </title&g ...

  4. pycharm注册码(不断更新)

    2019.3.13测试可用 MTW881U3Z5-eyJsaWNlbnNlSWQiOiJNVFc4ODFVM1o1IiwibGljZW5zZWVOYW1lIjoiTnNzIEltIiwiYXNzaWd ...

  5. Python档案袋( Sys 与 Import 模块)

    Sys模块: 获取Python有关的环境变量: import sys #得到Python的一些相关路径,环境变量 #其中site-packages目录存放的是一些第三方库 #其中lib目录存放的是一些 ...

  6. react-native热更新之CodePush详细介绍及使用方法

    react-native热更新之CodePush详细介绍及使用方法 2018年03月04日 17:03:21 clf_programing 阅读数:7979 标签: react native热更新co ...

  7. Spring Boot - 获取所有的Bean信息

    前言 Spring Boot启动的时候需要加载许多Bean实现最小化配置,本文将尝试找出Spring启动后加载的所有Bean信息: 通过ApplicationContext 去获取所有的Bean 通过 ...

  8. 7-Flink的分布式缓存

    分布式缓存 Flink提供了一个分布式缓存,类似于hadoop,可以使用户在并行函数中很方便的读取本地文件,并把它放在taskmanager节点中,防止task重复拉取. 此缓存的工作机制如下:程序注 ...

  9. istio小结

    一.概述 测试环境已经跑了很长时间的istio了,也更新到了最新的istio-1.1.性能相较之前提升很大,官方给出的测试数据说是延迟降低到了8ms,但是实际测试确实访问速度有很大的提升,但是确实还是 ...

  10. 为什么LINQ to XML的性能要优于XmlDocument?

    一直很忙,压了很多贴,今天发一篇吧.后面的看心情吧. 今天群里有人问如何解析web.config方便,然后我就推荐了Linq to XML,然后就有人说“我宁可XmlDocument,再SeleteN ...