JAV基础

这篇博客探讨了Java的运行机制,深入讲解了其基本特点,包括如何声明和使用变量,以及Java提供的各种数据类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Hello,今天呢,就聊聊java运行机制,多的啥也不说了,直接进入主题!

Java运行机制

			理解java运行机制,首先需要理解java虚拟机的概念。java虚拟机(Java Virtual Machine简称 JVM)是运行所有
				 Java程序的抽象计算机,是一个想象中的机器,是Java语言的运行环境,在实际的计算机上通过软件模拟。
				 安装JDK之后就包含java虚拟机。对于不同的操作系统就有不同的虚拟机。java虚拟机屏蔽了底层平台的差
				 别,可以实现“一次编译,到处运行”,真正实现了程序的可移植性。
				 运行java程序需要经过两个阶段:编译和解释,编译实现源程序(*.java文件)生成字节码文件(*.class文件)
				 ,解释通过java虚拟机将字节码文件执行出结果,我呢画个简陋的具体过程:

								编译	  执行	----------JVM for UNIX
						*.java ---->*.class----->----------JVM for Windows
												----------JVM for Other
															应该能看懂哈(毕竟我也能看懂\哈哈)
															这个呢就是java的运行过程。

Java基本特点

		1.简单性:
						人们希望构建一个无需专业训练就可以进行编程 的语言,并且符合当今标准。因此,尽管人们发现C++
						不太适用,但在设计java的时候还是尽可能接近C++,以便于系统更容易理解。java剔除了C++中许多很
						少使用、难以理解、易混淆的特性。的确,java语法是C++的一个“纯净”版本。
						简单的另一方面是小。java的目标之一是支持开发能够在小型机器上独立运行的软件。在当时,这可以说
						是不小的成就。由于不断地发展,现在已经有一个独立的具有较小类库的java微型版本(Java Micro Edition)
						用于嵌入式设备。
		2.面向对象:
						简单来讲,面向对象设计是一种程序设计技术。它将重点放在数据(即对象)和对象的接口上。用木匠
						打一个比方:一个“面向对象”的木匠始终关注的是所制造的椅子,第二位才是所使用的工具;一个“非面
						向对象”的木匠首先考虑的是工具。java语言是面向对象的语言。
		3.网络技能:
						java的网络能力强大且易使用。任何使用其他语言进行网络编程的人都会惊呼java竟然把类似打开socket
						连接这类繁重的任务变得如此简单。
		4.健壮性:这个特性非常实用。java语言能够检测许多其他语言中仅在运行时刻才能检测出来的问题。比如C/C++
						中的内存泄漏,在java中永远不会发生,所以java是绝对安全的。
		5.安全性:
						那就说到了安全性。从一开始,java就设计成能够防范各种袭击,如:
							——运行时堆栈溢出。如蠕虫等病毒常用的袭击手段。
							——在自己的处理空间之外破坏内存。
							——未授权读写文件。
							许多安全特性相继不断加入到java中。自从java问世以来,java就有了数字签名类的概念。通过数字
							签名类,可以确定类的作者。如果信任这个类的作者,这个类就可以在机器上有更多的权限。
		6.可移植性:
						与其他语言不同,java规范中没有“依赖具体实现”的地方。基本数据类型 的大小以及有关算法都做了明
						确的说明。例如:java中int永远为32位的整数,而在C/C++中,int可能是16、32位,也有可能指定其他
						的大小。java实现了在Windows、Mac OS、Linux平台的移植问题,在不需要修改代码的情况下,实现
						自由迁移。
			当然,java除了以上特性,还有很多其他的特性,知道的小伙伴可以告诉我哈!
			那现在还有些时间,可以把java的变量命名规范说一哈子~~~~/鼓掌鼓掌,毕竟像我这么好的人寥寥无几啦!

java变量

				变量顾名思义就是变化的量,代表变量的值是可以不断变化的。比如:年龄,性别,身高等,特别注意的还是
					变量中的值是不可以改变的,另外,变量名和变量值是两个不同的概念。
				在java中,使用变量时需要声明变量,在声明变量时需要确定变量名,那么变量名的命名规则是什么呢?等一
				哈子就给你说哈。算了,现在说吧:首字母为字母、下划线“—”和符号“¥”(咦,囊个是这样式的,不重要,反
				正是一样的符号),后面是字母、数字、下划线和符号“¥”构成的序列。注意,在命名是要确保所有的字符都
				是有意义的(不然被打死了不要来找我哈),并且大小写敏感。变量名的长度没有限制。在命名变量时如果只
				有一个单词,则都是小写,如果有两个或以上单词,则第一个单词小写,后面各单词的首字母大写。另外,变
				量名不能使用java关键字。那关键来了,我要放大招了!
				java的关键字主要有:
						基本数据类型:
						byte,short,int,double,long,float,boolean,char
						循环关键字:
						do,while,for,break,continue
						分支关键字:
						if,else,switch,case,default,break
						方法、变量及修饰符:
						private,public,protected,final,static,abstract,synchronized,volatile,strictfp
						常量:
						false,true,null
						方法:
						return,void
						包:
						package,import
						异常处理:
						try,catch,finally,throw,thows
						对象:
						new,extends,implement,super,class,instanceof,this
						反正还有很多哦,大家慢慢挖掘吧,这时估计有人看的脑壳都晕了,没事,慢慢来就好,毕竟咱还是一步
						一步走过来了。另外,虽然JDK1.5之后可以中文命名,不过还是不建议使用哈!
						那么一个人的信息有很多,对应的值也有很多,那这些值由什么来决定呢?
						哈哈,答案是数据类型!要让变量存储不同的数据由数据类型来决定,那么不同的值就有不同的数据类型。
						那么下面会继续聊聊java的数据类型!
						(好累哦打这个字,等我休息一哈子,陪我女朋友聊聊天/坏笑
							估计有人问我,你一个程序员怎么找的到女朋友哦!嘿嘿,,,因为我帅啊/哈哈哈
								等我回来哈!恩,,现在15.28分)
						。。。
						。。。
						。。。
						Hello,我回来啦!给她发消息没理我,估计在很认真的学习吧。她最近去学了个美甲,我说为啥子去学这个呀?
						想了一哈子,她说女生的钱比较好赚点/哈哈,这我能说啥/掩面
						好啦,进入正题,聊聊java的数据类型:

java数据类型

				1.整型:
							类型				存储要求									取值范围
							int					4字节								-2147483648------2147483647
							short				2字节								-32768-----32767
							long				8字节								-9223372036854775808-----9223372036854775807
							byte				1字节								-128--127
							通常情况下,int最常用。但如果表示星球数量,就需要long,其他类型根据具体要求的取值来决定采用数据类型。
				2.浮点类型:
							类型				存储要求						取值范围
							float				4字节							-2的31次方-1--2的31次方-1
							double		 		8字节							-2的63次方-1--2的63次方-1
							float为单精度浮点数,double为双精度浮点数。绝大部分应用程序采用double类型。因为,很多情况下,float类型
							的精度很难满足需求。如可以表示一个公司员工的年薪,但表示公司的收入就不够用了。
				3.char类型:
							char类型用于表示单个字符,采用单引号表示。如‘a’,而‘a’是字符串。char类型采用的编码格式为Unicode编码,
							一个字符占据两个字节。在c语言中字符均采用ASCII编码格式,该编码格式占据一个字节。采用Unicode编码可
							实现统一编码以及多语言程序的实现。
				4.布尔类型
							布尔(boolean)类型有两个值:true、false,用来判定逻辑条件。
				5.变量初始化:
							要想对一个已经声明过的变量进行赋值,就需要将变量名放在等号左侧,相应取值的java表达式放在等号右侧。
							如:int a;
									a=1;
							 也可以放在同一行:
							 		int a=1;
							 也可以放在代码中任意地方,但是建议尽可能声明在第一次使用的地方,这是比较优良的程序编写风格!
				6.常量:
						常量的值是不变的,在java中,利用关键字final声明:
							如:final  a=1;
						关键字final表示这个变量只能被赋值一次,一旦赋值就不能更改。
				7.数据类型转换:
						自动转换类型:
								规则如下:
											1.如果两个操作数中有一个是double,另一个操作数也转换成double
											2.否则,如果其中一个操作数是float,另一个操作数也转换成float
											3.否则,如果其中一个操作数是long,另一个操作数也转换成long
											4.否则,两个操作数都会转换成int
								例:`public class Type{
								public static void main(String[]    args){
								float a=10;//将整型自动转换为浮点数
								double b=10.0;//将带小数的常量转为double类型
								System.out.println("a="+a);
								System.out.println("b="+b);
									}
							}`
							输出效果为:a=10.0;b=10.0
							不会自动进行类型转换时,这时就需要强制转换,但是这种转换会存在精度丢失。
						强制转换:
								语法:数据类型  变量=(数据类型)变量
															double x=9.99;
															int a=(int)x;//这样变量a的值为9,强制类型转换通过截断小数部分将浮点数转为整数。
								例:`public class Type2{
								public static void main(String[]    args){
								float a=10F;
								int b=(int)10.0;
								System.out.println("a="+a);
								System.out.println("b="+b);
									}
							}`
							输出:a=10.0;b=10;
						...
						...
						...
						好啦!那大概今天就先到这,我女朋友找我啦!今天聊了java的运行机制,及基本特点还有java变量及数据类型!
						明天如果有时间会继续从基础部分的基本语法开始,小伙伴们Bye Bye咯~~~~~~~~
04-02
### Java编程语言入门到精通的核心知识点 学习Java编程语言可以从基础语法入手,逐步深入理解面向对象的概念以及高级特性。以下是关于Java编程语言从入门到精通的关键点: #### 基础概念 Java是一种跨平台的、面向对象的编程语言,具有简单易学的特点[^1]。编写Java程序通常遵循以下几个核心要素:定义类、方法和变量。 ```java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } } ``` 上述代码展示了如何创建一个基本的Java应用程序。通过运行此类文件,可以打印出“Hello, World!”字符串至控制台。 #### 面向对象编程 (OOP) Java支持完整的面向对象编程范式,其中包括封装、继承和多态等重要原则。例如,在构建学生信息管理系统时,可以通过构造函数初始化Student对象属性[^2]。 ```java public class Student { private int id; private String name; private Double mathScore; private Double osScore; private Double javaScore; public Student(int id, String name, Double math, Double os, Double java){ this.id = id; this.name = name; this.mathScore = math; this.osScore = os; this.javaScore = java; } @Override public String toString() { return "Student{" + "id=" + id + ", name='" + name + '\'' + '}'; } } ``` 此代码片段展示了一个典型的`Student`类实现方式及其参数化构造器。 #### 数据结构与算法 掌握数据结构(如数组、链表、栈队列)和常见算法对于提升开发能力至关重要。这些技能不仅适用于解决实际问题,也是面试中的重点考察部分。 #### 并发处理 随着应用规模扩大,了解线程管理及同步机制变得尤为重要。Java提供了丰富的API来简化并发操作的设计过程。 #### Web 开发框架 熟悉Spring Boot这样的现代化Web框架能够帮助开发者快速搭建企业级解决方案。它内置了许多实用功能模块,极大减少了项目启动时间成本。 #### 性能优化技巧 最后阶段应关注于提高软件性能方面的方法论研究,比如内存泄漏预防措施或者数据库查询效率改进策略等方面的知识积累。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值