首页 > 编程语言 >JAVA面向对象基本概念、类和对象

JAVA面向对象基本概念、类和对象

时间:2024-03-26 13:34:31浏览次数:28  
标签:JAVA 对象 面向对象 new main 方法 基本概念 属性

基本概念

一、什么是面向对象

  1. 面向对象是一种编程思想
  2. 面向对象是一种思考问题的思维方式

二、建立面向对象的思维方式

先整体,在局部;先抽象,在具体;能做什么,再做什么

类和对象

类是分类类别,通过分类可以区分不同事物种类

类是具有一组相同特征(属性)与行为(方法)的事物集合

类和对象的关系

类是一个共性的产物,是一个综合的特征;对象是一个个性的产物,是一个个体的特征

类是由属性和方法组成:属性:特征 ;方法:行为

JAVA定义类的语句

class 类名称{

        属性名称;

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

}

对象的定义:

类想进行操作,必须依靠对象。格式如下

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

访问类中的属性或者方法依靠语法:

访问类中的属性:

对象.属性

调用类中的方法:

对象.方法()

面向对象和面向过程的区别

面向对象:以对象为单位,通过调度组合不同的对象来完成某一个事情

面向过程:以步骤为单位,一步步完成某一个具体的事情

JAVA对象声明有两种含义

声明对象:Main main = null; 表示声明了一个对象,但是对象无法使用,main没有具体的内存指向

实例化对象:main = new Main();表示实例化对象,可以使用

通过对象调用方法 main.getmenu()

匿名对象调用方法new main().getmenu()

示例:

public class Main {
    public static void main(String[] args){
        //int i = 0;
        Test t = null;//声明了一个类的变量(除了八种基本数据类型以外都是引用数据类型,包括数组)

        //创建一个Test类型的对象,实例对象
        t = new Test();
        //调用对象的属性和方法
        t.name = "搬砖搬五块";
        t.age = 18;

        t.ensure();//调用方法,执行方法

        //匿名对象:只能使用一次,使用完对象将释放
        new Test().ensure();
        t = null;//对象释放
        //h.ensure();当对象不存在时,调用对象属性和方法将报错(空指针)
    }
}

//自定义一个类(类型)
class Test{
    //在类中定义属性(特征)
    String name;
    int age;
    public void ensure(){
        System.out.println("我是" + name + "我今年" + age + "岁");
    }
}

输出结果:

new关键字表示创建一个对象;表示实例化对象;表示申请内存空间

  1. new关键字向内存申请空间表示实例化一个对象创建一个对象
  2. 对象在内存上的大小由所有属性所占的内存大小的总和。引用类型变量在32位系统上占4个字节,在64位系统上占8个字节,加上隐形数据所占的大小
  3. 相同的类型才能赋值
  4. 不同引用指向同一个对象,任何一个引用对象值的,其他引用也会反映出来
  5. 不确定使用对象时要尽早释放
  6. 对象没有被引用变量所指向时,会被认为是垃圾对象从而被回收

标签:JAVA,对象,面向对象,new,main,方法,基本概念,属性
From: https://blog.csdn.net/m0_65721434/article/details/137035184

相关文章

  • Android证书校验出现java.io.IOException: Invalid keystore format错误的解决方案
    使用下面命令keytool-list-v-keystore签名.keystore出现错误java.io.IOException:Invalidkeystoreformat一般出现这种错误的情况有2种可能1.密码错误2.JDK版本问题1.如果是JDK8生成的keystore,然后用JDK11(+)执行是没问题的,当前情况不需要解决,因为是成功......
  • javaWeb项目-快捷酒店信息管理系统功能介绍
    开发工具:IDEA、Eclipse编程语言:Java数据库:MySQL5.7+框架:ssm、Springboot前端:Vue、ElementUI关键技术:springboot、SSM、vue、MYSQL、MAVEN数据库工具:Navicat、SQLyog项目关键技术 1、JSP技术JSP(Java脚本页面)是Sun和许多参与建立的公司所提倡的动态web技术。Ja......
  • 【御控】JavaScript JSON结构转换(1):对象To对象——键值互换
    文章目录一、JSON是什么?二、JSON结构转换是什么?三、核心构件之转换映射四、案例之《JSON对象ToJSON对象》五、代码实现六、在线转换工具七、技术资料一、JSON是什么?Json(JavaScriptObjectNotation)产生于20世纪90年代初,最初由道格拉斯·克罗克福特(DouglasCrockfo......
  • JavaWeb学习笔记——第五天
    请求响应概述前端控制器(核心控制器)DispatcherServlet:它实现了Servlet接口,可以被Tomcat程序识别。浏览器发起的请求会先通过DispatcherServlet,由DispatcherServlet将请求转给后方的controller程序进行处理,处理完成后,controller程序再将处理完的结果返回给DispatcherServlet,最后......
  • Java异常代码处理代码示例
    1.概念在我们写代码时,除了会遇到编译错误,我们还会遇到文件不存在、网络连接失败、空指针引用等问题,为了使我们的程序能够运行下去,Java提供了异常处理机制。就是在我们的代码中可能会出现异常,但是这并不会影响到程序的运行。在Java中我们有这些异常处理情况:try-catch块:try......
  • asp net在View视图下通过javascript访问服务器上的文件
    以通过javascript访问服务器上的文件为例控制器:[HttpPost]publicActionResultCheckFileExists(stringaFile){//检查文件是否存在if(System.IO.File.Exists(aFile))//theFile包括完整的路径和文件{returnContent("文件存在");}else{......
  • java计算机毕业设计(附源码)新知书店(ssm+mysql+maven+LW文档)
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:新知书店,作为一家专注于传播知识和文化的零售场所,承载着促进社会文化发展和满足人们精神需求的重要使命。在数字化时代背景下,实体书店面临着前所未有的挑......
  • 英特尔开发套件“哪吒”快速部署YoloV8 on Java
    作者:英特尔创新大使黄明明0.前言OpenVINO™工具套件基于OneAPI开发,可以加快高性能计算机视觉和深度学习应用开发速度的工具套件,适用于从边缘到云的各种英特尔计算平台上,帮助用户更快地将更准确的真实世界数据的AI推理结果部署到生产系统中。通过简化的开发工作流程,OpenV......
  • JAVA接口详解
    一,抽象类抽象类为用abstract修饰的类1,定义的成员变量与普通的类没有区别2,抽象类不可以被实例化3,当一个类不具体描述某个对象时,可以定义为抽象类4,如果一个类包含抽象方法,则这个类必须是抽象类,没有抽象方法,也可以被称为抽象类5,一个方法可以被修饰为abstract,这个方法可以不......
  • Java基础语法(三)
    1.if语句1.1格式一 if(关系表达式){  语句体;   }执行流程    ①首先计算关系表达式的值    ②如果关系表达式的值为true就执行语句体    ③如果关系表达式的值为false就不执行语句体    ④继续执行后面的语句内容......