java面向对象总结

怎么理解java面向对象 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 怎么理解Java面向对象,面向对象编程是当今主流的程序设计思想,已经取代了过程化程序开发技术,Java是完全面向对象编程语言,所以必须熟悉面向对象才能够编写Java程序。下面就来介绍一下什么是Java面向对象。   一、面向对象的概念   面向对象是一种符合人类思维习惯的编程思想。现实生活中存在各种形态不同的事物,这些事物之间存在着各种各样的联系。在程序中使用对象来映射现实中的事物使用对象的关系来描述事物之间的联系,这种思想就.. 阅读详情

面向对象思想
概述:基于面向过程. 就是你找一个对象来完成一件事,这个对象包含了完成事情的过程.

类与对象
类: 对事物的描述 – 虚
对象: 该事物的实体,实例 – 实
关系: 定义类,使用对象.
类是对象的描述,对象是类实体.

定义类
格式:
class 类名 {
}
成员变量: 事物的属性 --天生的 --通常叫属性
构造方法: 初始化数据 new 类(); --通常叫构造
成员方法: 事物的行为 --后天的 --通常叫方法

面向对象的三大特征
封装
步骤:1.使用private修饰成员(通常修饰属性),隐藏成员
2.提供公共的访问方式 (get/set)

	private:
		作用:隐藏属性,不让外界直接访问
		特点:只能本类访问 
	this: 当局部变量隐藏成员变量时使用this
		作用:指代当前(本类)对象,通常修饰成员变量 
	static: 
		特点:静态.
		修饰的成员变量,值被所有对象共享.
		修饰的成员方法,直接类名调用.
			
继承
	概述:子类继承父类,
	特点:1.父类成员子类可以直接使用
		 2.类与类形成了关系,从而形成体系
		 3.多态的前提
	注意事项:
		1.父类私有的子类不能访问
		2.构造方法不能用
		3.不能随便继承
		4.类与类是 "is a" 的关系,可以使用继承 

	super:表示父类存储空间的标识(理解为父类引用)

	成员关系
		成员变量(同名):使用子类
			想要使用父类super.成员变量
			
		构造方法:不能继承,但是子类会访问父类构造super()
			加载顺序:创建子类时,先访问父类的构造
			注意事项:
				1.super(参数),访问父类的有参.
				2.位置必须在第一行
				
				
		成员方法(同名):使用子类
			重写概述:父类和子类方法声明一模一样(返回值类型,方法名,参数列表)
			注意事项:
				私有:不能重写
				权限:子类的权限不能更低
		静态方法:必须使用静态重写.

				
		面试题:
			重写与重载的区别:
			override: 父类和子类方法声明一模一样(返回值类型,方法名,参数列表)
			overload: 同一类中,方法名一样,参数列表不同,与返回值类型无关

	final:  最终
		概述: 修饰类  成员变量,方法 
		特点:被修饰的东西不能被更改 
			类: 不能继承
			变量: 只能赋值一次
			方法: 不能重写
	
多态: 
	概述:一种事物多种形态(H2o , 动物 ,水果....)
	前提:
		1.子类继承父类,或者实现接口 (必须二选一)
		2.方法重写(非必须)
		3.父类引用指向子类对象(最必须)

			Fu f = new Zi();
			
	成员关系:
		成员变量:编译看左边,运行看左边
			
		构造方法:编译看左边,运行看左边
			
		成员方法:编译看左边,运行看右边  *****
			
		静态方法:编译看左边,运行看左边
			
	子类特有的方法:
		向上转型:从子类转向父类
			格式: Fu f = new Zi();
		向下转型:从父类转向子类
			格式 : Zi z = (Zi)f;

注意: 参数传递为类,抽象类,接口 --案例练习 (钢铁侠,榨汁机,发牌机)
-------------------------------------------------------

抽象类
概述:无法具体描述的类,通常定义父类为抽象类
特点:
1.格式:abstract class 类名{
}
2.类中可以有抽象方法,和非抽象
abstract 返回值类型 show();
3.有构造方法,但是不能new
4.想new抽象类,只能ne它的子类
5.子类: 要么是抽象的
要么必须重写抽象方法 ***

成员特点:
	a:成员变量:既可以是变量,也可以是常量。
	b:构造方法:有。
				用于子类访问父类数据的初始化。
	c:成员方法:既可以是抽象的,也可以是非抽象的。
面试题: abstract 不能和哪些关键字共存?
		private    冲突 -- 对子类隐藏,而 abstract 必须让子类重写 
		final      冲突 -- 不能被重写,矛盾 
		static     无意义-- 类名调用,没有方法体,无意义

接口
概述:实现类的扩展功能
本质:定义的规则
特点:
1.格式: interface 接口名{
}

		使用: class 子类 implements 接口名{  // 可以实现多个接口
			//重写所有的抽象方法  

		}
	2.成员变量: 只能是常量
	3.成员方法: 只能是抽象
	4.构造方法: 无
	5.实例化: new 子类();
	6.子类要求:重写所有的抽象方法  
		 

类与类,类与接口,接口与接口关系--看图 

内部类
概述: 类里面的类 (人里面的心脏)
成员内部类:
格式:
class Outer{
class Inner{
}
}
方式一:定义内部类,并且可以创建内部类对象,使用内部类的方法.
通过外部类的方法,创建的内部类对象
方式二:外部类.内部类 变量名 = new 外部类().new内部类();

	注意:如果private 修饰 内部类,那么就不能直接创建,提供公共的访问方式.(封装的思想 )
内部类成员特点 :
	成员变量 ,内部类是可以访问到外部类成员的,反之不可以.

如果内部类被私有了,外界是不能直接访问到的,而必须通过外部类提供的公共的访问方式才行. 

局部内部类:
格式:
class Outer{
show(){
局部变量必须final;
class Inner {

				}
			}
		}
内部类可以直接访问外部类成员变量,但是,对于局部变量,那么必须是final.
可以在局部位置创建内部类对象,但是,得在内部类的class 下面,创建才行
	问题:只能访问被final修饰的局部变量吗?
	肯定的.局部变量和内部类的生命周期不同,所以使用final把局部变量变成常量.
class Outer{
	int x3 = 10; //成员变量 
 	public  void method(){
		final  int x2 = 100; // 局部变量   为final 
		final int x3=30;   //就近原则

	 class Inner{
		public void show(){
			System.out.println("局部inner show");
			System.out.println(x2);
			System.out.println(x3);
		}
		}
	 
	Inner inner = new Inner();
	inner.show();
	}
}
class InnerClassDemo5 {
	public static void main(String[] args) {
		Outer o = new Outer();
	o.method();
		}
	}

匿名内部类:
前提:有一个接口或者类
本质: 匿名对象– 实现了接口,或者继承了类的匿名子类的对象
new 接口(){
抽象方法
};

代码块:
静态:执行一次,类加载的时候
static {

} 
构造:执行多次,调用构造方法
局部:及时回收变量,提高运行效率

权限修饰符:
本类 同包 不同包子类 不同包其他类
private *
default * *
protected * * *
public * * * *

常用 public 修饰 类 和方法
和 private 修饰 成员变量

关于三维全波电磁场仿真软件CST的安装和问题解决 百度网盘链接:https://pan.baidu.com/s/1RgWr8Qau1EzSOlh29SewFQ提取码:fzza这里是2023版本的CST,需要其他版本的uu们可以去官网或者其他人的网盘下载。 阅读详情

相关推荐

IGS精密星历高效获取与解析指南

本文详细介绍了IGS精密星历在高精度定位中的核心作用,对比了IGS Final、IGR和IGU等不同产品的精度与时效性差异。指南提供了从武汉大学、NASA CDDIS等数据中心高效下载数据的实战方法,并深入解析了SP3文件格式,帮助用户掌握精密星历的获取、解析与自动化处理技巧,以支持厘米级定位应用。

garlic的博客 838

java面向对象

本文内容是根据毕晓东老师的视频教程总结而得。包括面向对象概念、类与对象的关系、封装、构造函数、this关键字、static关键字、单例设计模式、继承、多态、内部类、异常、包等java基础知识。 1、面向对象 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程强调的是功能、行为 面向对象:将功能封装进对象,强调具备了功能的对象 面向对象是基于面向过程的 面向过程例子: ...

黎小小的博客 4万+

【Cadence】Virtuoso@LayoutXL 差分电路版图镜像同步技巧详解

本文详细介绍了在Cadence Virtuoso LayoutXL中实现差分电路版图镜像同步的技巧,包括核心需求、环境配置、分步操作指南及高级技巧。通过使用LayoutXL的Group功能,工程师可以高效保持差分电路的对称性,提升版图迭代效率,确保高速信号处理的稳定性。特别适用于深亚微米工艺下的差分放大器设计。

weixin_29215391的博客 323

Java——面向对象

Java是一门纯面向对象的语言,在面向对象的世界里,一切皆为对象。面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。 面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。Java中有很多对象来自标准库,还有一部分由自己定义。从根本上说只要对象能够满足要求,就不必关心其功能的具体实现过程。在OOP中不必关心对象的具体实现,只要其能够满足用户的需求即可。

lqt214133的博客 9268

VH6501实战:手把手教你用CANoe脚本精准触发CAN总线干扰(附避坑点)

本文详细介绍了使用VH6501和CANoe脚本精准触发CAN总线干扰的实战技巧,包括触发位置控制、ValidityMask配置和干扰序列设置等关键步骤。通过具体代码示例和常见问题排查指南,帮助工程师避开实际应用中的常见陷阱,提升CAN总线干扰测试的准确性和效率。

weixin_33709219的博客 369

如何理解鲁棒性?为什么robustness会翻译为鲁棒性?

鲁棒性,英文为Robustness(承受故障和干扰的能力),是许多复杂系统(包括复杂网络)的关键属性。复杂网络的鲁棒性研究对许多领域都非常重要。本文着重介绍了鲁棒性的基本定义、命名起源、分类区别、提升方法和具体应用,供大家学习参考。

weixin_46880696的博客 8万+

Java面向对象

Java面向对象1.Java面向对象是什么2.面向过程和面向对象的优缺点1.面向过程的优缺点:2.面向对象的优缺点:3.面向对象三大特性五大原则1.三大特性:2.五大原则:总结: 1.Java面向对象是什么 OOP(面向对象编程)、OOD(面向对象设计)、OOA(面向对象的分析) Object Oriented Programming     &nb...

逆水行舟,不进则退 5657

Arduino-CRSF库详解:嵌入式端CRSF协议解析与ELRS接收机集成

CRSF(Crossfire Serial Protocol)是一种面向FPV无人机的轻量级、高实时性串行通信协议,采用单总线异步传输与8位CRC-8校验机制,广泛应用于遥控链路与遥测交互。其核心在于帧同步(0xC8起始字节)、反相逻辑电平及无重传的广播式设计,对嵌入式平台的UART精度、电平匹配和状态机健壮性提出严苛要求。Arduino-CRSF库正是为资源受限MCU(如ESP32、STM32、ATmega328P)提供零配置、中断安全的协议解析能力,封装了CRC查表计算、超时恢复、多级同步验证等关键机制

weixin_35756690的博客 415

【Java面向对象学习】一张图搞定Java面向对象

刚开始学习Java的时候,一个人跌跌撞撞摸索着往前走,很多东西理解的也懵懵懂懂,后来实践的多了,才慢慢清楚;许多东西虽然很基础但是却很重要,是需要反复思考和加深理解的。【Java面向对象学习】一张图搞定Java面向对象,分享一些归纳总结后的技术干货,一张图能搞定的事,绝对不长篇大论。 大家都知道,Java面向对象是Java的一个核心,也是初学者的一个难点,所以我们从这里开始,Let’s go

monkey518的博客 4509

跨境电商产品信息抓取:使用Python爬虫进行市场分析

跨境电商平台是指为不同国家和地区的买卖双方提供在线交易服务的电子商务平台。亚马逊(Amazon):全球最大的电商平台之一,提供丰富的商品种类和全球配送服务。eBay:全球知名的在线拍卖和购物网站,支持个人和企业卖家。速卖通(AliExpress):阿里巴巴旗下的跨境电商平台,主要面向全球消费者提供中国制造的商品。Wish:以移动端为主的跨境电商平台,主打低价商品和个性化推荐。这些平台上的商品数据包括商品名称、价格、销量、用户评价、库存等信息,对于市场分析具有重要价值。

2201_76125261的博客 1232

机器人视觉联动精度优化:从±2mm到±0.02mm,产线级手眼标定全实战

2025年我接东莞长安Type-C接口分拣项目的时候,就是栽在了手眼标定上:实验室里标定完精度±0.5mm,一到产线直接掉到±2mm,机器人10次有3次抓不住,2000多件Type-C接口直接报废,还撞坏了2套汇川SCARA机器人的吸盘,本来45天的工期拖了3个月,不仅没赚到钱,还倒贴了几万块。手眼标定从来不是简单的跑个demo、算个矩阵就完事了,它是一个系统工程:从硬件选型、安装固定、相机标定、标定流程、算法优化、环境控制、重复验证,每一个环节都会影响最终的联动精度。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 384

Java——Java面向对象

Java是面向对象的程序设计语言,Java语言提供了定义类、成员变量、方法等最基本的功能。类可被认为是一种自定义的数据类型,可以使用类来定义变量,所有使用类定义的变量都是引用变量,它们将会引用到类的对象。类用于描述客观世界里某一类对象的共同特征,而对象则是类的具体存在,Java程序使用类的构造器来创建该类的对象。继承是面向对象的三大特征之一,也是实现软件复用的重要手段。Java的继承具有单继承的特点,每个子类只有一个直接父类。

qq_16027093的博客 2528

【STK】手把手教你利用STK进行仿真-STK软件简介02 STK专业分析模块

STK/Astrogator是一个交互式轨道机动和深空探测计划工具,用于飞行器运行及任务分析,通过定义推力模型、目标星历、飞行器姿态,提供轨道机动的解决及优化方案。应用Astrogator分析轨道机动的可见性和地面站覆盖,用户可以快速、方便地进行全局分析。任务控制序列保存在STK场景中,用于任务运行、快速制定精确轨道机动方案。为在轨运行的飞行器制定或执行机动计划时,分析人员可以根据飞行过程数据,如发动机定标参数、实际初始轨道,计算出推进器点火和点火时机数据,用于发出指令及精炼机动计划。

weixin_44184852的博客 1864

JAVA面向对象是什么?

JAVA面向对象面向对象?What???什么是对象(Object)?什么是面向对象?面向对象有什么特征? 面向对象?What??? 众所周知 Java是一种面向对象的语言,那么什么是面向对象? 什么是对象(Object)? 对象就是具有某些的特殊属性(成员变量)和行为方式(方法)的实体。 现实生活中的任何事物都可以看作是对象,无论是具体或抽象的事物,Java中就有了一种思想叫做“万物皆对象”...

weixin_44684812的博客 9944

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

JAVA面向对象

抽象类不能加final修饰,Java中的抽象类是用来被继承的,而final修饰符用于禁止类被继承或方法被重写,因此,抽象类和final修饰符是互斥的,不能同时使用。方法名、参数列表和返回类型必须与父类中的方法一致,通过@override注解来明确表示这是对父类方法的重写。是代码复用的重要手段,通过继承可以建立类与类之间的层次关系,使得结构更加清晰。简而言之,抽象类不能直接实例化,但通过继承抽象类并实现所有抽象方法的子类是可以被实例化的。封装是指将对象的属性(数据)和行为(方法)结合在一起。

weixin_62658327的博客 1776

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Java面向对象专题

Java面向对象专题解读

从知识输入到知识输出 4264

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Java笔记——Java——面向对象_java面向对象

文章目录一. 面向对象编程Java核心思想就是OOP1. 面向过程&面向对象区别1.1 从语言方面出发对于C语言来说,是完全面向过程的 对于C++语言来说,是一半面向过程,一半面向对象。 对于Java语言来说,是完全面向对象的1.2 面向过程的开发方式面向过程思想(线性思维)特点:步骤清晰简单,第一步做什么,第二步做什么…面向过程也注重实现功能的因果关系,因为A所以B,因为B所以C面对过程适合处理一些较为简单的问题缺点:面向过程最主要是每一步与每一步的因果关系,其中A步骤因果关系关系到B步骤,A和B联合起来

a25847a的博客 1161

Java笔记——Java面向对象

1. 面向对象简介学习面向对象会涉及到很多专有的名词,比如类与对象、继承、抽象、接口、多态、封装等等,很多人在学习时过于关注这些名词的概念,会觉得概念很多很绕,就说面向对象很难,其实不是这样的,要与现实场景相结合来学习Java面向对象. 面向对象思想 首先我们来了解一下什么是面向对象思想?这里说的思想,你可以理解为解决问题的方式。比如说我想吃蛋炒饭,这是我的目的,为了实现这个目的,我们有不同的解决问题的方式。如果我是一个勤快的人,自己动手做蛋炒饭,你需要先打鸡蛋——准备葱花——放油——在锅里翻炒——最后出锅

a25847a的博客 703

Java之面向对象

面向对象 一、基础概念 1、什么是面向对象 万事万物皆可是对象,而了解对象的详细信息,并关注它,这个过程就叫面向对象。面向一个具体的事物进行操作,便面向对象编程。                                                                      因为你不会Java啊,来Java中new一个呀,不就有了? 2、Java中的对象 用来描述一个实体,通常由一组属性和对这组属性进行的操作组成。 对象的产生:通过对类的实例化。 对象的”一生“:生成、使用、

qq_43325476的博客 1701

java什么是面向对象_java什么是面向对象 java中什么是面向对象啊?

Java中的面向对象是什么意思?面对对象就是: 把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。对同类对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。Java中面向对象到底是什么意思java 面向对象的原理是什么呀?C++与Java都是面向对象,有什么区别吗?c++和java都是面向对象...

weixin_39795479的博客 216

Java面向对象总结

Java 是纯粹的面向对象语言,它因统一的字节码文件和差异化的 JDK 而具有平台无关的特性。

砥砺前行的博客 330

Java 面向对象一览

作者:白色蜗牛公众号:蜗牛互联网本文大纲:前言学 Java 的朋友都知道,Java 是一门典型的面向对象的高级程序设计语言,但有些朋友可能不清楚面向对象在 Java 中是怎么体现的。这篇...

程序员蜗牛 548

java面向对象报告总结,Java面向对象总结篇

Java面向对象总结小白今天来整理一下Java面向对象,顺带回顾一下Java基础,虽然小白也没啥基础,但是还是写一点吧,毕竟发布一篇原创博客还有10个积分/xieyanxiao什么是面向对象?面向对象在百度百科中是这样解释的:“面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物”。说的好像很流弊的样子,看看就行。说道面向对象,大家肯定会想到面向对象的三大基本特征:封装...

weixin_32223631的博客 937

【Java】05 面向对象

Java是纯粹的面向对象编程语言,完全支持面向对象的三大基本特征:封装、继承和多态。Java程序的组成单位就是类,不管多大的Java应用程序,都是由一个个类组成的。

Demo_Null 2921

Java 面向对象思想

Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下,使用Java语言去设计、开发计算机程序。这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算机事件的设计思想。它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去操作实现。类:是一组相关属性和行为的集合。

TMesh的博客 909
上一篇: java中==和equals()的区别?
下一篇: SCRIPT438: 对象不支持“includes”属性或方法
qq_34412985
博客等级 码龄11年 143粉丝 983原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值