首页 > 编程语言 >JAVA面向对象(一)类的定义

JAVA面向对象(一)类的定义

时间:2024-12-23 19:53:07浏览次数:4  
标签:JAVA 定义 Person gender age introduce 面向对象 String name

类是面向对象编程的核心概念之一,它就像是一个模具,定义了一类事物所具有的共同特征和行为。在 Java 中,我们使用class关键字来定义一个类。例如,让我们创建一个简单的Person类:
java
public class Person {
// 成员变量,描述人的属性
private String name;
private int age;
private String gender;

// 构造方法,用于创建对象时初始化属性
public Person(String name, int age, String gender) {
    this.name = name;
    this.age = age;
    this.gender = gender;
}

// 成员方法,定义人的行为
public void introduce() {
    System.out.println("My name is " + name + ", I'm " + age + " years old and I'm a " + gender + ".");
}

}
在这个Person类中,我们通过private关键字将name、age和gender声明为私有成员变量,这体现了封装的思想,保护了数据的安全性。构造方法Person(String name, int age, String gender)则用于在创建Person对象时为这些成员变量赋值。而introduce方法则是Person类的一个行为,用于输出个人信息。
(二)对象的创建与使用
有了类,我们就可以创建对象了。对象是类的具体实例,就如同根据模具生产出的一个个实实在在的产品。在 Java 中,使用new关键字来创建对象。例如:
java
public class Main {
public static void main(String[] args) {
Person person1 = new Person("Alice", 25, "female");
person1.introduce();

    Person person2 = new Person("Bob", 30, "male");
    person2.introduce();
}

}
在main方法中,我们分别创建了person1和person2两个Person对象,并传入相应的参数进行初始化。然后通过调用introduce方法,让每个对象都能展示自己的信息。

标签:JAVA,定义,Person,gender,age,introduce,面向对象,String,name
From: https://www.cnblogs.com/fanxn/p/18624895

相关文章

  • Java多线程、线程池介绍及多线程间的协同
    Java多线程是Java编程中的一个核心概念,它允许程序同时执行多个任务,从而提高程序的执行效率和响应速度。下面我将从线程的创建、线程的状态管理、线程的协作、线程池的使用、同步机制的实现以及并发控制的方法等几个方面来详细介绍Java多线程。一、线程的创建在Java中,创建线程......
  • Java的垃圾回收机制介绍、工作原理、算法及分析调优
    Java的垃圾回收(GarbageCollection,GC)是Java虚拟机(JVM)提供的一种自动内存管理机制,用于自动回收不再使用的内存空间,以避免内存泄露和内存溢出等问题。下面主要介绍Java垃圾回收的基本概念、工作原理、算法等。一、JVM内存结构在了解垃圾回收之前,我们需要先了解JVM的内存结构。J......
  • JAVA基础教程-(二)JAVA面向对象编程
    教程目录JAVA基础教程JAVA面向对象编程(二)一、类的成员1.1、属性1.2、方法1.2.1、方法的重载(overload)1.2.2、可变个数形参1.2.3、方法参数的值传递的机制1.3、构造器(构造方法)1.4、总结:属性赋值过程二、面向对象特征:封装和隐藏JAVA基础......
  • javaweb汽车维修保养试驾服务管理系统
    目录项目介绍具体实现截图开发核心技术:开发过程思路核心代码部分展示实验方案:详细视频演示源码获取方式项目介绍本文以java为开发技术,实现了一个期汽车维修保养试驾服务管理系统。服务管理系统的主要使用者分为管理员;个人中心、用户管理、汽车信息管理、试驾预约管......
  • 【java毕设 python毕设 大数据毕设】基于springboot的西山区家政服务网站设计与开发
    ✍✍计算机毕设编程指导师**⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流!⚡⚡Java、Python、小程序、大数据实战项目集⚡⚡文末获取......
  • 【java毕设 python毕设 大数据毕设】基于springboot的物业管理系统的设计与实现 【附
    ✍✍计算机毕设编程指导师**⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流!⚡⚡Java、Python、小程序、大数据实战项目集⚡⚡文末获取......
  • 教你学会自定义鼠标指针
    我现在用的一款很好看的指针如下图所示:是不是真的还挺不错的,还有更多可好玩的样式:只要先下载了这个软件,这些都是可以免费使用的,看腻了就换一个!下载过后操作这个就可以直接生效了,都不用重新启动的......
  • QTreeView + 自定义json模型
    QTreeView使用自定义json模型前言QTreeView+自定义json模型QTreeView使用自定义json模型支持节点插入删除二、代码//QJsonModel.h#ifndefQJSONMODEL_H#defineQJSONMODEL_H#include<QAbstractItemModel>#include<QJsonDocument>#include<QJsonObject>#i......
  • Java项目实战之基于 Spring Boot、MyBatis 和 Vue.js 的智能停车场系统设计与技术选型
    1.系统概述本智能停车场系统旨在为停车场提供高效、便捷的管理解决方案,涵盖车辆进出管理、车位预订、停车费用计算、用户信息管理等功能,同时提供管理员操作界面和用户移动端应用,提升停车场运营效率和用户体验。1.1目标实现停车场自动化管理,提高车位利用率,减少人工成本,为用户提......
  • 继承的介绍、使用-java se进阶 day01
    1.继承的介绍2.继承的使用为什么要使用继承?假如以后要写一个项目,其中程序员一个类,项目经理一个类,Hr一个类,但是这些类的成员都一样如图我们会发现这些成员都是重复的,三个类都写重复的成员十分繁琐,所以我们使用继承,假如有一个类-员工,里面都有这些对象,然后让Coder、Manager、Hr......