【Java学习】类、对象、实例—类是对象的抽象,对象是类的实例

类、对象、实例的关系是什么,如果不能很好的理解什么是类什么是对象就无法讲清楚,

类:某种事物与另一种事物具有相似性,比如哈士奇和泰迪,我们发现他们有一些相似的特性和行为,在生物学上,他们都属于“狗”,狗都会什么呢?他们都会叫、有四条腿等等,我们把这种具有相同属性和行为的事物就叫做类,就是我们常说的“他们是一类东西”。同时我们知道在编程语言中又数据类型这种东西,那么“类”就是一种数据类型,一种由用户定义的引用类型。并且在类中,包含属性和方法,用来描述对象的特征(比如狗一定有鼻子)和行为(比如狗一定会摇尾巴)。类还有一个特征就是它是抽象的,比如有没有一个具体的东西就叫“狗”呢,答案是没有的,所有狗的特征和行为的都叫狗,所以类时抽象的。

对象:一个具体的不具备普适性的东西就是对象,比如你有一条狗叫HaHa,HaHa就是对象,它是具体的,在现实世界中,我们看到的所有的东西都是一个对象。

类和对象有什么关系呢?:用刚才我们狗的例子来看,HaHa是条狗,也就是说Haha是狗的一个具体的表现,那是不是就是说,HaHa是狗的一个具体的例子,当有人问什么是狗的时候,你指着HaHa说,这就是狗,我们也叫HaHa是狗的一个具体的实例。

现在我们就能很好的区分类、对象、实例了,类是具有相同属性和行为的事物的总称,对象是类的一个具体的例子,也就是说类是对象的抽象,对象是类的实例

原文地址:https://www.cnblogs.com/marlanchen/p/11563929.html

时间: 2024-08-29 06:30:55

【Java学习】类、对象、实例—类是对象的抽象,对象是类的实例的相关文章

JAVA学习第二十九课(经常使用对象API)- String类

多线程告一段落,開始经常使用对象API的涉及,背也要背下来!.! 日后开发,遇见最多的对象是文字,也就是字符串 String类 字符串是一个特殊对象 字符串一旦初始化就不能够被改变 一.特点 public class Main { public static void main(String[] args) { Demo1(); System.out.println("--------------"); Demo2(); } /*演示字符串的第一种定义方式,并明白字符串常量池的特点*/

Java学习笔记2-一切都是对象

创建句柄:String s = "abc"; 创建对象:String s= new String("abc"); 程序运行时数据可能保持的位置: 寄存器(register):最快的,但是有编译器分配,我们没法控制 堆栈(stack):存在于 RAM 区域,Java 对象句柄/引用和基础类型的变量值会存放在这里 堆(heap):堆里分配存储空间会花掉更长时间,Java 对象实例和数组会保存在这里 静态存储(static storage):RAM 中的固定位置,使用 s

Effective Java 学习笔记之创建和销毁对象

一.考虑用静态工厂方法代替构造器 1.此处的静态工厂方法是指返回指为类的对象的静态方法,而不是设计模式中的静态工厂方法. 2.静态工厂方法的优势有: a.使用不同的方法名称可显著地表明两个静态工厂方法的不同,而不像构造器,名字只能是类名. b.并不是每次调用静态工厂方法,都会重新构造一个新的对象. c.可以返回类型的子类型的对象. d.创建参数化类型的实例时,代码变得简洁了. 3.静态工厂方法的缺点有: a.类如果不含有公有的或者受保护的构造器,就不能被子类化(静态工厂方法的存在导致构造器存在的

Java学习笔记-12.传递和返回对象

1.Clone()方法产生一个object,使用方法后必须产生的object赋值. Vector v2 = (Vector)v.clone(); 2.Clone()方法在object中是保护类型方法,如果自己创建的类需要使用Clone()方法的话需要自己重新写一个,并且继承Cloneable接口. package tweleve; import java.util.*; class MyObject implements Cloneable { int i; MyObject(int ii) {

Java学习之IO流(操作对象)

操作对象 ObjectInputStream与ObjectOutputStream 就是把对象持久化(对象存储到硬盘上),表现形式就是对象文件 持久化对象必须实现Serializable接口 1 public class Person implements Serializable { 2 private String name; 3 private int age; 4 5 public Person() { 6 super(); 7 } 8 9 public Person(String na

JAVA学习第三十课(经常使用对象API)- String类:类方法练习

intern方法 public class Main { public static void main(String[] args) { String str1 = new String("asd"); String str2 = str1.intern();/* 字符串常量池中有,就返回字符串,没有就创建 */ System.out.println(str2); System.out.println( str1 == str2 ); } } 练习1:字符串数组排序 import j

Java学习日记num6

学习内容:继承的概述:继承出现后子父类中成员的特点:final关键字:抽象类:接口:模板方法设计模式 一.继承的概述 1,继承的好处 1),提高了代码的复用性 2),继承的出现,让类与类之间产生了关系.有了这个关系,才有了面向对象的多态的这个特性. 特别要说明一点:千万不要为了获得其他类的功能简化代码而继承,必须是类与类之间有所属关系才可以继承.即不要有奶就是娘. 2,java中继承的特点 java语言中,java只支持单继承,支持多层继承,但不支持多继承.因为多继承容易带来安全隐患,当功能名称

Java学习笔记--类和对象

1.介绍面向对象的编程 面向对象是现在主流的编程样例,它替代了以前C语言使用时的"结构体",Java是一门面向对象的语言,所以需要熟悉面向对象的概念.面向对象的程序由很多对象组成,每个函数对于用户而言,都有特殊的功能.程序里面的很多对象都可以直接从公共库里面拿来直接用.不用去研究这些功能怎么去实现的.传统的结构的编程由一系列算法步骤来解决问题.一旦这些步骤确定下来,也要同时确定存储数据的方式.也就是数据结构一开始学习的:算法+数据结构=程序. 先决定算法,再决定使用什么样的结构来存储数

[Java学习笔记]-Java对象和类

Java是完全面向对象的高级语言,其基本的操作基本都是针对相应的对象和类.面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分.对应面向对象的语言,还有一种面向过程的语言,如C语言.面向对象的语言是在面向过程语言的基础上发展而来的.面向对象(OOP,全称为Object-Oriented-Programer,下文简称为OOP)相对于面向过程的语言而言,其优势在于很多问题的解决方法被封装在对象里,有时只需要创建这样的对象就可以解决我们的问题,而不必关心其具体实现细节,这