类和对象的关系

  • 类是一种抽象的数据结构,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物

    • 动物、植物、手机、电脑
    • Person类、Pet类、Car类等,这些都是用来描述/定义某一类具体的事物应该具备的特点和行为。
  • 对象是抽象概念的具体事例

    • 张三就是人的一个具体实例,张三家的旺财就是狗的一个具体实例。
    • 能够体现出特点,展现出功能的是具体的实例,而不是一个抽象的概念。

创建与初始化对象

  • 使用new关键字创建对象

  • 使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中的构造器的调用。

  • 类中的构造器也成为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点:

    1. 必须和类的名字相同
    2. 必须没有返回类型,也不能写void
  • 构造器必须掌握

//学生类
public class Student {
//属性:字段
String name;
int age; //方法
public void study(){
//this代表当前类
System.out.println(this.name+"学生在学习");
} } public static void main(String[] args) {
//类:抽象,实例化
//类实例化之后会返回一个自己的对象
//student对象就是Student类的具体实例
Student student = new Student(); Student xiaoming = new Student();
Student xh = new Student(); xiaoming.name="小明";
xiaoming.age=3; System.out.println(xiaoming.name);
System.out.println(xiaoming.age); System.out.println(xh.name);
System.out.println(xh.age);
}

输出结果

小明
3
null
0

狂神说java

Day009 类和对象的创建的更多相关文章

  1. Python 定制类与其对象的创建和应用

    1.创建新类Athlete,创建两个唯一的对象实例sarah james,他们会继承Athlete类的特性 >>> class Athlete: def __init__(self, ...

  2. 类和对象的创建过程(元类,__new__,__init__,__call__)

    一. type() 1.创建类的两种方式 方式一 class MyClass(object): def func(self,name): print(name) myc = MyClass() pri ...

  3. Java面向对象系列(4)- 类与对象的创建

    类与对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是不能代表某一个具体的事物 动物.植物.手机-- Person类.Pet类.Car类等,这些类都是用来描述/定义某一类具体的事 ...

  4. python类与对象-如何创建可管理的对象属性

    如何创建可管理的对象属性 问题举例 在面向对象编程中, 我们把方法看作对象的接口, 直接访问对象的属性可能是不安全的,或设计上不够灵活. 但是使用调用方法在形式上不如访问属性简洁. circle.ge ...

  5. Java面向对象03——类与对象的创建

    类的创建与初始化对象 age: 以类的方式组织代码,以对象的组织(封装)数据  package oop.demon01.demon02; ​ // 学生类(抽象模板) public class Stu ...

  6. python cookbook第三版学习笔记十二:类和对象(三)创建新的类或实例属性

    先介绍几个类中的应用__getattr__,__setattr__,__get__,__set__,__getattribute__,. __getattr__:当在类中找不到attribute的时候 ...

  7. Java类与对象的创建

    以类的方式组织代码,以对象的方式组织(封装)数据 组织代码(类) public class Demo04 { String name;//默认值null int age;//默认值0 public v ...

  8. Javascript创建类和对象

    现总结一下Javascript创建类和对象的几种方法: 1.原始的创建方法: <script type="text/javascript"> var person = ...

  9. JavaSE基础知识(5)—面向对象(5.1类和对象概念、创建及内存分配)

    一.类和对象的相关概念 1.面向对象和面向过程的理解 面向对象和面向过程都属于解决问题的思考方式.面向过程:以执行者的角度思考问题,侧重于“怎么做”,比较适合解决小型项目面向对象:以指挥者的角度思考问 ...

随机推荐

  1. MyBatis(四):自定义持久层框架优化

    本文所有代码已上传至码云:https://gitee.com/rangers-sun/mybatis 修改IUserDao.UserMapper.xml package com.rangers; im ...

  2. FreeBSD 包管理器设计简介

    熟悉 Linux 的人也许会发现,FreeBSD 的包管理方案实际上大约等于以下两大 Linux 发行版包管理器的完美合体: Arch: pacman,对应 pkg(秉承同样的 KISS 理念) Ge ...

  3. ASP.NET Core分布式日志系统ELK实战演练

    一.ELK简介  ELK是Elasticsearch.Logstash和Kibana首字母的缩写.这三者均是开源软件,这三套开源工具组合起来形成了一套强大的集中式日志管理平台. •  Elastics ...

  4. 一些DevTools的小技巧-让你不止会console.log()

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 原文参考:https://www.sitepoint.com/beyond-console-log-leve ...

  5. 【框架】SPI四种模式+通用设备驱动实现-源码

    目录 前言 bsp_spi.c bsp_spi.h bsp_flash.c bsp_flash.h 前言 SPI 介绍为搜集百度资料+个人理解 其余为原创(有误请指正) 集四种模式于一身 demo 采 ...

  6. Java代码实现热部署

    一.思路 0. 监听java文件最后修改时间,如果发生变化,则表示文件已经修改,进行重新编译 1. 编译java文件为 class文件 2. 通过手写类加载器,加载 class文件 ,创建对象 3. ...

  7. 如何使用Topshelf与.NET泛型主机建立Windows服务

    1 前置阅读 在阅读本文章之前,你可以先阅读: Topshelf一个用于使用.NET构建Windows服务框架 2 使用 2.1 创建应用程序 首先,创建一个新的控制台应用程序并从nuget获取Top ...

  8. Nginx常用部分命令

    Nginx一些命令 Windows 查看帮助信息 nginx -h 查看 nginx 版本 (小写字母 v) nginx -v 除版本信息外还显示配置参数信息 (大写字母 V) nginx -V 启动 ...

  9. 翻译:《实用的Python编程》08_03_Debugging

    目录 | 上一节 (8.2 日志) | 下一节 (9 包) 8.3 调试 调试建议 假设程序崩溃了: bash % python3 blah.py Traceback (most recent cal ...

  10. [Fundamental of Power Electronics]-PART I-1.引言-1.1 功率处理概论

    1.1 功率处理概论 电力电子领域关注的是利用电子设备对电力进行处理[1–7].如图1.1所示,其中关键部件就是开关变换器.通常,开关变换器包含电源输入和控制输入端口以及电源输出端口.原始输入功率按控 ...