찾다
Javajava지도 시간Java 객체란 무엇입니까? Java 객체 소개(코드 예제)

이 글의 내용은 Java 객체란 무엇인가에 관한 것입니다. Java 객체의 소개에는 특정 참고 가치가 있습니다. 도움이 필요한 친구가 도움이 되기를 바랍니다.

예:

public class Book {

    /**
     * 书名
     */
    private String name;
    /**
     * 作者
     */
    private String author;

    /**
     * 获取书名
     * @return
     */
    public String getName() {
        return name;
    }

    /**
     * 设置书名
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取作者
     * @return
     */
    public String getAuthor() {
        return author;
    }

    /**
     * 设置作者
     * @param author
     */
    public void setAuthor(String author) {
        this.author = author;
    }

}

객체란 무엇입니까

"JAVA 프로그래밍 사고"는 객체를 다음과 같이 정의합니다. 문제 공간의 요소와 솔루션 공간의 해당 표현을 "객체"라고 합니다.
1. 문제 공간: 실제로 해결된 문제의 모델
2. 컴퓨터(기계 모델).
실제 문제를 컴퓨터(기계 모델)로 표현한 것을 객체라고 합니다. 위의 예에서 컴퓨터는 책을 나타내기 위해 고유한 엔터티(new Book())를 사용하며 이 엔터티는 객체라고 하며 해당 객체는 클래스의 인스턴스입니다.

클래스란 무엇입니까

동일한 속성과 동작을 가진 객체를 추상화한 것이 클래스입니다. 즉, 클래스는 객체의 청사진입니다. 둘 사이의 관계는 클래스의 인스턴스입니다. 객체이며 객체의 추상화는 클래스입니다. 위의 예에서 Book은 클래스입니다.

객체의 특성

1. 동작: 클래스 메서드, 예제의 메서드: getName(), setName(문자열 이름), getAuthor(), setAuthor(문자열 작성자).
2. 상태: 클래스의 속성, 예제의 속성: 이름, 작성자,
3. ID: 메모리에 있는 클래스의 주소, 메모리에 있는 new Book()의 주소가 식별입니다.

객체 지향 기능

1. 캡슐화: 객체의 속성을 숨기지만 사용자가 이러한 속성과 상호 작용할 수 있는 메소드를 제공합니다. 핵심은 사용자가 메소드를 통해서만 객체의 속성에 액세스할 수 있다는 것입니다. 캡슐화 구현, 비공개 속성: name, 하나의 속성 액세스 방법: getName(), 하나의 속성 변경 방법: setName(문자열 이름).

2. 상속: 기존 클래스를 상속하여 이 클래스의 속성과 메서드를 재사용할 수 있습니다. 상속된 클래스를 상위 클래스라고 하며 하위 클래스는 특정 코드를 사용하여 자체 코드를 만들 수 있습니다. 함수. 상위 클래스 클래스는 일반적으로 공통 메서드와 속성을 저장합니다. 상속은 확장 키워드를 통해 이루어집니다.

상속 예:

// 备注:class可以定义多个类,但只有一个public类,而且public修饰的类名称要和文件名称一致。
public class BookTest{
    public static void main(String[] args) {
        System.out.println(new HistoryBook().getName());
    }
}
class HistoryBook extends Book{
    /**
     * 发生日期
     */
    private LocalDate happenDate;
    protected LocalDate getHappenDate() {
        return happenDate;
    }
    public void setHappenDate(LocalDate happenDate) {
        this.happenDate = happenDate;
    }
}

위의 HistoryBook은 Book의 하위 클래스입니다. 기본 메서드에서는 HistoryBook 개체를 통해 책 제목을 직접 가져올 수 있습니다. 이는 HistoryBook 클래스에 포함되지 않은 속성입니다. 상속을 통해 public, protected 및 default로 수정된 상위 클래스의 모든 함수를 호출할 수 있습니다.

3. 다형성: 변수 참조가 여러 실제 유형을 가리킬 수 있는 현상을 다형성이라고 합니다. 다형성의 형성은 상속(확장)/구현(구현)을 기반으로 합니다. 중요한 점은 상위 클래스 참조는 하위 클래스 변수를 가리키지만 상위 클래스 참조는 하위 클래스 변수에 할당될 수 없다는 것입니다.

다형성 예:

        // 父类引用指向子类,形成多态
        Book book = new HistoryBook();
        // 报错,原因:不能把父类引用赋值给子类,因为不能确定父类的具体类型,父类可能是A extends Book,也可能是B extends Book,不能把A或B强制转成HistoryBook,因为它们两之间是没有任何联系的。
        HistoryBook historyBook = (HistoryBook) new Book();
        // 这里是正常运行的,因为book其实指向的是一个HistoryBook的对象,这里是可以强制转换的。
        HistoryBook hb = (HistoryBook) book;

위 내용은 Java 객체란 무엇입니까? Java 객체 소개(코드 예제)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 博客园에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
Java对象的创建过程是什么?Java对象的创建过程是什么?Apr 11, 2024 pm 12:51 PM

Java对象创建涉及以下步骤:类加载:加载类的二进制代码。内存分配:在堆内存中分配用于对象的内存空间。实例化:在分配的内存空间中创建对象的新实例。初始化:用默认值初始化对象的实例变量。构造函数调用:调用适当的构造函数来初始化对象的其余字段。

一图看懂MyBatis执行流程:SQL映射到Java对象的过程一图看懂MyBatis执行流程:SQL映射到Java对象的过程Feb 22, 2024 pm 04:33 PM

MyBatis是一款优秀的持久层框架,它简化了在Java应用程序中与数据库交互的过程,极大地提高了开发效率。MyBatis框架的核心思想是将SQL语句与Java对象映射起来,通过XML配置文件或者注解实现SQL映射,使得我们可以轻松地进行数据库操作。在MyBatis中,SQL映射到Java对象的过程可以简单分为三个步骤:配置SQL映射文件、定义Java对象和

java对象是怎么理解的java对象是怎么理解的Jun 21, 2023 am 11:13 AM

Java对象是由我们自己定义的类来创建的,实际上就是类的具体实现,没有类就没有对象,一个类可以创建出很多对象。类就是具备某些共同特征的实体的集合,是一种抽象的数据类型,是对所具有相同特征实体的抽象,是对一类“事物”的属性与行为的抽象。对象就是一个真实世界中的实体,对象与实体是一一对应关系的,意思就是现实世界的每一个实体都是一个对象,所以对象是一个具体的概念。

通过JPA技术将Java对象持久化到MySQL数据库中进行存储通过JPA技术将Java对象持久化到MySQL数据库中进行存储Jun 10, 2023 am 10:15 AM

JPA(JavaPersistenceAPI)是JavaEE5.0引入的一个ORM规范,目的是为了简化对象和关系数据库的映射,帮助Java开发者更轻松的将Java对象持久化到关系数据库中。JPA通过抽象数据的概念,将Java对象和关系数据库之间的映射隐藏起来,开发者可以专注于编写业务代码,而不需要关注数据的存储细节。在本篇文章中,我们将介绍如何使

Java对象的生命周期如何?Java对象的生命周期如何?Apr 11, 2024 pm 06:54 PM

Java对象生命周期包括:创建对象、初始化、可达性、失效、回收。创建对象通过new关键字,初始化在构造方法中进行,可达性指通过引用变量访问,失效指不再可达,回收指垃圾回收器释放失效对象内存。

java对象怎么理解java对象怎么理解Aug 09, 2023 pm 02:08 PM

java对象是Java编程语言中的核心概念,是通过类实例化得到的具体实体,具有属性和方法,可以看作现实世界中的事物、概念或抽象概念的表示。Java对象是类的实例化,通过使用类的构造函数,可以创建一个具体的人的实例;Java对象具有属性,属性描述了对象的特征,通过使用类的成员变量来表示;Java对象具有方法,用于改变对象的状态或提供对象的功能;Java对象具有封装性等等。

JVM内部数据结构:高效管理Java对象JVM内部数据结构:高效管理Java对象May 09, 2024 am 11:39 AM

JVM内部数据结构包括对象头、类表和哈希表,用于高效管理Java对象。对象头存储元数据,类表提供类信息,哈希表实现快速对象查找,共同确保Java应用程序的高性能运行。

Java对象的创建开销有哪些?Java对象的创建开销有哪些?Apr 11, 2024 pm 03:15 PM

Java对象创建存在开销,包括内存分配、构造函数调用和类加载。具体开销取决于堆大小、类大小和代码执行时间。实战中,创建100万个整数对象耗时约1000毫秒。优化策略包括使用对象池、线程局部存储和延迟初始化。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.