最近IT界的热点之一莫过于华为发布的鸿蒙开源操作系统。如今似乎很少有人研究操作系统了,大家更关注上层应用以及云服务了,还记得十几年前,从网上还能下载到几百K大小的操作系统,甚至还带有图形界面。当时主流的操作系统还是Windows 2000和XP。随着各种终端设备的兴起,尤其是手机。围绕几大操作系统的生态圈也随之成熟起来,并占据了垄断地位,当然实际上在整个过程中也淘汰掉了一些操作系统,比如当年诺基亚
首先来看一下【封装】在java中的经典体现: 不允许对象使用【圆点运算符】直接【存取】实例变量的值; eg: 像上面这样可以直接使用【圆点运算符】改变dog1实例的age变量的值,这在java的世界里是及其不可被接受的,因为他违背了封装的铁律!!! 从而对数据进行了不合理的暴露,【这里的暴露指的是——可以使用【圆点运算符】直接【存取】实例变量的值】所以,正确的写法是: 所以,可以总结出java封装
转载
2023-06-19 23:15:39
129阅读
new机制理解:new常见的说法:声明一个对象并实例化; 在JAVA里就是创建一个新的实例,或者说一个新的对象,一个普通类在没有实例化之前,就是new之前,它的属性,方法等等在内存中都是不存在的。只有使用new了以后,这个类的一些东西在内存中才会真的存在,也就是说只有new了之后,这个类才能用。 参考B站教程后的原理图进一步理解:反射机制理解反射的概念:将类的各个组成部分封装为其他对象,这就是反射
转载
2023-06-15 14:37:34
222阅读
设置环境变量 path、classpath、JAVA_HOME在java 中需要设置三个环境变量(1.5之后不用再设置classpath了,但个人强烈建议继续设置以保证向下兼用问题)。 JDK安装完成之后我们来设置环境变量:右击“我的电脑”,选择“属性”,选择“高级”标签,进入环境变量设置,分别设置如下三个环境变量:(1)配置path变量:●为什么要配置path变量? 因为电脑系统将根据
重载定义:同一类中,方法名相同,参数列表不同的一组方法的定义,与返回值无关为什么需要重载? 在我们用编程时,我们可能要定义一些操作内容相似但是参数列表不同的方法,比如构造方法的重载,减少了我们针对不同的参数列表重新想方法名,节约了方法名,也使我们在阅读代码的时候更简单明了对于继承父类的子类能否重载父类的方法这个问题:肯定是不能的,因为在不同类中不存在重载的说法。但是子类继承了父类后,自然也就继承了
转载
2023-08-21 02:07:59
68阅读
# 鸿蒙系统为何不使用Java语言
## 引言
在现代操作系统中,选择合适的编程语言至关重要。华为的鸿蒙操作系统面临着与Java的关系问题:为什么鸿蒙系统不选择使用Java语言?在这篇文章中,我将引导你了解这一决策背后的原因及其实现过程。我们将通过步骤展示、代码示例以及状态图和旅行图来详尽阐述。
## 整体流程
为了更好地理解鸿蒙系统不使用Java的原因,暂时我们可以将这个决策过程简化为以
我总是要把构造器和方法混淆,后来发现,方法,实际上,是需要用于执行java代码的,而构造器,构造器,,,是一个类的实例!!(我的理解,构造器是一个对象)为什么呢?类的实例,我们需要用类来创建对象,进而访问其属性,因为实例是需要被用来调用的,但是调用的话,我们不得不去考虑一个问题,就是对象,最终是被存储在内存里面的,而存储的时候,我们的内存不得不需要给他再另外开辟新的内存空间,那么,java是如何给
转载
2023-07-17 21:13:00
39阅读
就如同,如果我们想要游泳,前提是需要一个泳池;如果我们想要打篮球,前提是需要一个篮筐一样。如果我们想要使用Java语言进行开发工作或者想要运行由Java语言编写的程序,那么第一步工作就是搭建一个支持Java语言的环境。首先我们需要认识Java为我们提供的这两样东西:JRE - Java Runtime Environment (Java运行环境)JDK - Java Development
转载
2023-08-14 20:32:06
84阅读
一、为什么要使用Atomic类?看一下下面这个小程序,模拟计数,创建10个线程,共同访问这个int count = 0 ;每个线程给count往上加10000,这个时候你需要加锁,如果不加锁会出现线程安全问题,但是使用AtomicInteger之后就不用再做加锁的操作了,因为AtomicInteger内部使用了CAS操作,直接无锁往上递增,有人会问问什么会出现无锁操作,答案只有一个:那就是快呗;下
new的作用
在java中,new操作往往意味着内存中的开辟新的内存空间,这个内存空间分配在内存中的堆区,受到jvm控制,自动进行内存管理。这里我们就是用String这个类来举例说明。public class Test {
public static void main(String[] args) {
String aString = "hello";
String bStri
转载
2023-05-25 15:01:31
107阅读
软件开发涉及到各方面人员的交互、协作,为了有效地进行项目开发的沟通,完善代码的维护和交付,有必要在一个小组中采用统一的软件开发标准。 一般来说,制定这样的标准有下列好处,方便软件维护。据统计,80%的软件开发费用在维护,规范化的代码才方便维护,降低维护成本。在软件的整个生命期内,期望一个编码人员从开始到该软件报废一致维护其代码是不现实的,必然需要不断地交付、协同。好的编码规范能够大大增强代码
Java方法的定义和使用(部分)方法的基本定义(==重点==)方法重载(==重点==)方法的递归调用(了解)总结 现在所讲的方法只是方法定义格式,只属于Java方法定义的其中一种格式。而完整的组成方式将逐步渗透。 了解: 方法的定义原则方法的重载操作方法的递归调用(了解)方法的基本定义(重点)方法(Method)在一些书中也会有人将其称为函数(Funtion),但是两者的含义是完全相同的。那
转载
2023-08-10 17:02:08
49阅读
引言任何一个Java程序员学习Java语言的第一步就是环境搭建,环境搭建是Java程序员的必修课,不仅要熟练掌握环境搭建的步骤,还需要深刻理解环境搭建的意义。一、为什么要搭建环境java 是一门跨平台语言,编写的java程序需要考虑两个问题,第一个是编译,第二个是运行。 所以,我们需要一种工具可以把 源代码编译成字节码,同时还需要一个工具去解释执行这个字节码。为此SUN 为Java开发者提供了一套
转载
2023-07-15 17:18:27
94阅读
一、什么是面向对象? 就我的理解来说,面向对象就是将某一事物(对象)的属性和行为进行抽象。在java中可将对应属性抽象为成员变量,将行为抽象为方法。 二、为什么要面向对象? 1)不从代码层面从日常生活的理解来看,面向对象更利于我们对客
转载
2023-08-19 23:33:10
58阅读
异常处理为什么需要异常处理呢? 没有异常处理就会用很多条件语句判断,大量的判断语句会很影响程序的性能。java的异常机制恰好改进了这一点,它具有易于使用、可自行定义异常类,处理抛出的异常的同时,又不会降低程序运行的速度和优点。在计算机发展中,有两大计算机杀手,一个是断电,另一个是被除数为0,因为被除数为0在数学上解释无穷大,则意味着内存将全部被占满。throws这种抛出的异常,代表这个类有可能产生
一、不要问一个程序员为什么命名是基础零(^_^)二、Java为什么跨平台:因为有java虚拟机,一个程序的运行必然要依赖于系统,java的跨平台是因为java虚拟机jvm把不同平台编写的代码编译成本机可以识别的机器码从而运行。因此是java的虚拟机jvm是java实现的跨平台。需要注意的是跨平台的是java而不是虚拟机,虚拟机是不跨平台的。Java的虚拟机是一个桥梁。三、为什么要配置jdk的环境变
转载
2023-07-07 14:12:33
111阅读
Java方法:方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集 。方法必须先创建才可以使用,该过程成为方法定义方法创建后并不是直接可以运行的,需要手动使用后,才执行,该过程成为方法调用方法的定义:1.无参数的方法定义权限修饰符 返回值类型 方法名(){
方法体;
return 返回值;
}例如:public static int getComGuessNum(
Java方法方法定义Java方法是语句的集合,它们在一起执行一个功能方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用设计方法原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是一个方法只能完成一个功能,这样利于我们后期的扩展方法的命名规则:修饰符 返回值类型 方法名(参数类型 参数名){ …… 方法体 …
转载
2023-08-26 16:40:29
44阅读
“开源”这一词,在智能家居行业里挺火的,特别是当360创始人周鸿祎在南京创新周·紫金山创新大会上所表示的“建议华为鸿蒙系统开源”这一观点,让原本在Github与Linux这类业内才熟悉的“热名词”,变成了互联网前沿人人都在讨论的热点话题。一些人无比肯定“开源”的作用,笑谈“Linux终将统治世界”。另一些人则指责让鸿蒙“开源”是只想着“摘别人辛苦种出来的果实”。也有不少人保持中立的态度。不管您是什
首先得介绍下面几个参数的作用:current directory(当前目录):当前在用的目录就是当前目录。比如说当你打开NOTEPAD,并处于运行状态时候,当前目录就是c:/windows;如果你用cmd命令打开命令行窗口,当前目录就是c:/windows/system32;如果你在用java这条指令,当前目录就是JAVA下的BIN目录所在的路径,因为java.exe在bin里面。在java开发配
转载
2023-10-03 20:35:47
71阅读