当前位置: 首页 > news >正文

java类与对象

1.面向过程与面向对象

<1>.C语言:面向过程编程

基本概念

C语言是一种经典的面向过程编程语言,由丹尼斯·里奇(Dennis Ritchie)于1972年在贝尔实验室开发。面向过程编程(Procedural Programming)是一种以过程为中心的编程范式,它将程序视为一系列可调用的函数或过程的集合,强调按照一定的步骤顺序执行任务。

主要特点

  1. 函数为核心:C程序由一系列函数组成,每个函数完成特定的任务
  2. 顺序执行:程序按照从上到下的顺序执行指令
  3. 模块化:将复杂问题分解为多个较小、更易管理的函数模块
  4. 数据与操作分离:数据结构和操作数据的函数是分离

典型应用场景

  1. 系统编程:操作系统、设备驱动开发
  2. 嵌入式系统:微控制器编程
  3. 性能关键应用:游戏引擎、高频交易系统
  4. 编译器开发:许多编译器使用C语言实现
  5. 网络协议栈:TCP/IP协议实现

C语言因其高效性、可移植性和接近硬件的特性,仍然是计算机科学教育和系统编程领域的重要语言。

<2>.java语言:面向对象过程

Java是一种完全面向对象的编程语言,其面向对象的过程主要体现在以下几个方面:

1. 类和对象

Java程序的基本单位是类,类是对象的模板。例如:

public class Person {// 成员变量(属性)private String name;private int age;// 构造方法public Person(String name, int age) {this.name = name;this.age = age;}// 成员方法(行为)public void introduce() {System.out.println("我叫" + name + ",今年" + age + "岁。");}
}

2. 面向对象三大特征

封装
  • 将数据和行为包装在类中
  • 通过访问修饰符控制可见性(private/protected/public)
  • 提供getter/setter方法访问私有属性
继承
  • 使用extends关键字实现类继承
  • 子类可以继承父类的非私有成员
  • 支持单继承,但可以通过接口实现多重继承效果
public class Student extends Person {private String school;public Student(String name, int age, String school) {super(name, age);this.school = school;}@Overridepublic void introduce() {super.introduce();System.out.println("我在" + school + "上学。");}
}
多态
  • 编译时多态(方法重载)
  • 运行时多态(方法重写)
  • 父类引用可以指向子类对象

3. 对象创建和使用过程

  1. 声明对象Person p;
  2. 实例化对象:使用new关键字调用构造方法
    p = new Person("张三", 25);
    
  3. 初始化对象:构造方法执行初始化
  4. 使用对象:通过对象调用方法或访问属性
    p.introduce();
    

Java的面向对象特性使程序更模块化、更易维护和扩展,是Java成为企业级应用首选语言的重要原因之一。

2.类

public class Cat {public String name;public int age;public String sex;public String color;//构造方法 ----->一个特殊方法//构造方法名称与类名相同,构造方法没有返回值类型//在java类当中有一个默认不显示的无参构造方法//一旦我们在java类当中重写了默认的无参构造方法,他就会被覆盖public Cat(){}public Cat(String name){}public Cat(String name,int age,String sex,String color){this.name = name;this.age = age;this.sex = sex;this.color = color;}public void eat(){System.out.println("吃好吃");}public int sleep(){System.out.println("睡睡觉");return 0;}public void play(){System.out.println("玩玩玩");}
}
package com.qcby;public class Demo {public static void main(String[] args) {Cat cat1 = new Cat();cat1.eat();cat1.sleep();Cat cat2 = new Cat();cat2.eat();cat2.sleep();}
}

* Cat 数据类型 表示数据在内存当中的存储形式

* cat1 变量名(对象名称)

* new 关键字 表示在堆当中开辟内存空间(创建对象)

* Cat() 构造方法:创建对象的时候调用构造方法, 给对象赋值

* = 赋值(将创建出对象的地址值赋值给变量....)

类是面向对象编程(OOP)中的核心概念,它充当创建对象的蓝图或模板。在程序中,类定义了对象将具有的属性(数据)和方法(行为)。具体来说:

  1. 类的组成:

    • 属性:描述对象特征的变量(也称为成员变量)
    • 方法:定义对象行为的函数(也称为成员函数)
    • 构造方法:用于初始化新创建对象的特殊方法
  2. 类与对象的关系:

    • 类就像设计图纸,对象是根据图纸建造的具体实例
    • 例如,"汽车"类可能包含品牌、颜色等属性,以及启动、加速等方法
    • 根据这个类,可以创建多个具体的汽车对象(如红色奥迪、蓝色宝马等)
  3. 关键特点:

    • 封装性:将数据和操作数据的方法捆绑在一起
    • 复用性:一个类可以创建任意数量的对象
    • 独立性:每个对象都有自己的属性值,互不影响

通过使用类,开发者可以更好地组织代码,提高代码的可维护性和复用性,这是面向对象编程的重要优势之一。

3.类与对象的应用(链表)

链表的节点是一个对象

public class Node{public int data;public Node next;//Node数据类型表述数据在内存当中的存储形式public Node(int data,Node next){this.data=data;    }
}
public class Test{public static void main(String[] args){Node node1=new Node(1); Node node2=new Node(2);Node node3=new Node(3);Node node4=new Node(4);node1.next=node2 ;node2.next=node3;node3.next=node4;  }
}

4.类当中的访问修饰符

修饰符

当前类

同包

同包子类

不同包子类

其他包

public

protected

×

×

默认

×

×

private

×

×

×

×

http://www.dtcms.com/a/531968.html

相关文章:

  • AI 应用层革命(一)——软件的终结与智能体的崛起
  • Linux Crontab命令详解:轻松设置周期性定时任务
  • beef-xss网页无法访问
  • JavaEE初阶——多线程(3)线程安全
  • AI 开发告别 “孤岛”:MCP + 火山引擎
  • 做网站怎么开发程序建设网站改版
  • 招生管理平台需求分析文档
  • 设计模式-代理模式(Proxy)
  • Apache IoTDB(8):时间序列管理——从创建到分析的实战指南
  • IntelliJ IDEA 四种项目构建:从普通 Java 到 Maven Web 项目
  • 深入浅出数据结构:堆的起源、核心价值与实战应用
  • 智能行李架:快速找到最佳行李位
  • ArcGIS如何根据属性字段符号化面要素
  • 洛阳企业网站建设深圳网站建设系统
  • 面试题-React
  • 【HarmonyOS】GC垃圾回收
  • 字节跳动Seed团队推出 Seed3D 1.0:从单张图像生成仿真级 3D 模型
  • 大连城市建设档案馆官方网站单页竞价网站
  • MATLAB基于博弈论组合赋权灰靶模型的煤矿安全综合评价
  • word删除含有指定内容的行
  • AutoSAR实战教程--英飞凌MCAL/ETH Driver嫁接LwIP以太网协议栈(Tc3XX系列)
  • 黑帽seo怎么做网站排名章丘网站定制
  • 最新多语言跨境商城系统源码 跨境电商系统 全开源
  • 如何解决PHP开发中的数据安全和加密存储
  • PHP Composer:高效的项目依赖管理工具
  • 网络攻防技术:防火墙技术
  • 旧版本附近停车场推荐系统demo,基于python+flask+协同推荐(基于用户信息推荐),开发语言python,数据库mysql,
  • 关于 CMS
  • 网站开发框架参考文献最新军事动态最新消息视频
  • 【Shell】流程控制