初识Java语言

目录

Java语言特性

Java程序的运行

配置环境变量CLASS_PATH

配置环境变量PATH

小问题

        public class和class有什么区别?

特别问题


Java语言特性

  • 在Java语言中真正的操作内存的是JVM(java虚拟机),使用C++编写的虚拟电脑,不容易导致内存泄露,效率低,不需要手动释放内存空间,但是也不是自动释放空间,不能及时清理内存空间。
  • 安装JDK开发工具性就安装了JRE运行环境和JVM虚拟机。
  • 完全的面向对象,同一个时间点多个用户并发的访问。多线程,提升程序的执行效率。
  • 同一个时间点多个用户并发的访问。多线程,提升程序的执行效率。
  • 可一致性、跨平台。编写一次到处运行,Linux、MAC、windows。如何做到?
这样做:不同的操作系统的执行原理是不相同,通过JVM虚拟机运行就可以屏蔽操作系统的差异性。程序面向jvm虚拟机,jvm虚拟机面向操作系统,操作系统面向硬件。缺点:麻烦!

Java程序的运行

编译:普通文本代码无法直接执行,需要将Java代码变成JVM能够识别的字节码文件,这个变化的过程叫做编译。一个Java源文件亦可以有多个.class文件(不是二进制文件)。
运行:jvm装载字节码文件并解释.class字节码文件成为二进制,然后交给OS(操作系统),OS会执行二进制码和硬件。源代码不参与代码的运行。
反编译:字节码变成源代码的过程。
运行:classloader类加载器,找到.class文件,装载、解释、操作系统执行。
在管理员窗口使用(java xx文件名)命令之后:启动JVM虚拟机,类加载器会去硬盘找与xx同名的class字节码文件,如果找不到会报错。找到了class文件,它会将文件装载到JVM中,进行解释成二进制,操作系统执行。

配置环境变量CLASS_PATH

        classpath环境变量可以更改类加载器读取class文件的路径,从而达到在任何目录下都能执行配置的路径下class文件,不再是从当前路径下找class文件执行。也可以不配,那就从当前class目录下运行class文件,这样系统才找得到。ok,开始疑惑了,什么是类加载?我也不知道。

配置环境变量PATH

        Path系统环境变量,用来指定命令搜索的路径,通过此变量下的路径寻找命令,保证在任何路径下都能执行到相应的命令。初学Java,会用到Javac命令和Java命令,都是JDK下的bin目录中的(exe文件)。path与class_path相比较,path针对于.exe文件,class_path针对于class文件。不配path,就找不到命令,就只能在命令目录下执行。

小问题

        public class和class有什么区别?
一个Java文件可以定义多个class,public class不是必须的,每个定义class类通过Javac命令就生成一个.class文件。一个类中有多个类,只有一个public 修饰的类。

特别问题

当一个类中有一个大写的A类和一个小写的a类,在编译的时候生成class文件,只会生成靠前的一个类,而运行的时候却运行的靠后的一个类。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值