Java笔记——Java基础概念_java概念

Java基础概念

基础概念

Java语言

一种面向对象的语言

public class Hello{
   
public static void main(String[] args){
   
System.out.println("Hello world!");
}
}
public class Hello{
   
public static void main(String[] args){
   
System.out.println("Hello world!");
}
}

一种平台无关的语言,必须程序运行的解释环境 javac Hello.java-----Hello.class

一种健壮的语言,吸收了C/C++语言的优点,但是去掉了影响程序健壮性的部分,例如指针、内存的申请与释放等 不能讨论指针

Java主要技术分支

JavaSE:Java标准版,适合于开发桌面系统和低端商务应用系统
JavaEE:Java企业版,为企业提供电子商务构架及Web服务的解决方案
JavaME:Java微型版,是移动商务最佳的应用典范

Java应用场景

Java编程语言是一种广泛应用于互联网应用的高级计算机语言,主要应用于网络编程和互联网电子商务
应用,特别适合于Internet应用程序开发

JVM、JRE和JDK的区别

JVM -java virtual machine在真实机器中用软件模拟实现的一种想象机器 ,java虚拟机负责解释执行字节码文件,是可以运行Java字节码文件的虚拟计算机。JVM可以保证java的跨平台的特性。java语言是跨平台,jvm不是跨平台的

JRE - java 运行环境。JRE 是由JVM 和 java platform 核心类以及相关支撑文件组成

Java的开发平台JDK是开发人员用来构建Java应用程序的软件包,它包括:Java虚拟机JVM、Java编译器javac、Java归档jar实用程序、Java文档javadoc实用程序等

所谓的Java运行环境JRE是JDK的子集,包括JVM、运行时类库和执行Java字节码所需要的Java应用程序启动器,但省略了Java编译器等开发工具。如果只需要运行Java而不需要开发Java程序,则不需要完全安装JDK,只选择安装JRE即可

Java的三种核心机制

Java虚拟机(Java Virtual Machine)

虚拟机就是在真实机器中用软件模拟实现的一种虚拟机器。Java虚拟机代码被存储在 .class文件中;每个文件都包含最多一个public类。

Java虚拟机可以理解成一个以字节码为机器指令的CPU。对于不同的运行平台,有不同的虚拟机。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”

垃圾收集机制Garbage Collection

Java编程语言解除了程序员取消分配存储器的责任,它可提供一种系统级线程以跟踪每一存储器的分配情况。在Java虚拟机的空闲周期,垃圾收集线程检查并释放那些可被释放的存储器不再使用内存空间回收——垃圾回收

在C/C++等语言中,由程序员负责回收无用内存。Java语言消除了程序员回收无用内存空间的责任,它提供了一种系统级线程跟踪存储空间的分配情况,并在JVM的空闲时检查并释放哪些可被释放的存储空间。

垃圾收集在Java程序原型过程中自动运行,程序员无法精确控制和干预

代码安全性检测Code Security

在运行时,执行机器只是将.class类文件通过交互后使用,一般情况下是看不到它的源代码.Java,如果想要看到.Java源程序,就要通过专用反编译工具,才能够看到。这就体现了Java在运行环境中相对其它语言来说,加强了代码的安全性

Hello Java

1、一般考虑开发效率的情况下可以使用IDE集成开发环境工具,目前练习一天采用的是记事本之类的文本编辑工具,Centos下使用的是vi/vim
2、创建一个文本文件修改名称为Hello.java
3、Java是一个面向对象的编程语言,所以编写程序的开始就是定义类的开始,如果类是public类型的类,则类名称必须和文件名称一致(不包括后缀,包括大小写)
4、在命令行下执行编译,编译操作可以将程序.java转换为后缀为.class的二进制文件(字节码文件)
5、执行程序,语法为java 类名称。例如java Hello,注意这里是类名称,不是文件名称,所以没有后缀.class
java.exe就是解释器

Java虚拟机中类加载的过程

系统会通过加载、连接、初始化三步来实现这个类进行初始化。
链接包括验证、准备以及解析三个阶段。(1)验证阶段。主要的目的是确保被加载的类满足Java虚拟机规范,不会造成安全错误。(2)准备阶段。负责为类的静态成员分配内存,并设置默认初始值。(3)解析阶段。将类的二进制数据中的符号引用替换为直接引用。

javadoc用法

Javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档

javadoc -d 目标文件夹abc
javadoc -d 目标文件夹abc

Hello.java文件名
@author指定程序的作者
@version指定源文件的版本
@param方法的参数说明信息
@return方法的返回值说明信息
@see用于指定参考的内容
@exception抛出异常的类型
@throws抛出的异常,和@exception同义

1 /** 2 文档注释,使用javadoc命令可以生成html格式的说明文件 3 *@author 某某 4 *@version 1.0.0 5 */
6 public class Hello{
   //定义一个java类程序
7    /** 8 * 主方法 9 * @param args数组用于接受命令行参数 10 * @return 没有返回值 11 */
12 /* 13 多行注释 14 可以添加多行的说明信息 15 */
16 public static void main(String[] args){
   System.out.println("Hello Java!");}
17 }
1 /** 2 文档注释,使用javadoc命令可以生成html格式的说明文件 3 *@author 某某 4 *@version 1.0.0 5 */
6 public class Hello{
   //定义一个java类程序
7    /** 8 * 主方法 9 * @param args数组用于接受命令行参数 10 * @return 没有返回值 11 */
12 /* 13 多行注释 14 可以添加多行的说明信息 15 */
16 public static void main(String[] args){
   System.out.println("Hello Java!");}
17 }

Java中注释

一般要求编写程序必须有合理的注释说明,注释一般建议控制在20%-30%代码量上。但是具体实践中一般不会写这么多的注释,但是不写注释是不合理的
// 单行注释
/*
多行注释
/
/
*
文档注释,可以通过使用javadoc工具生成对应的说明文档*/

IDE工具

集成开发环境IDE是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用
户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。IDE
即集成开发环境。IDE提供了一个可视化的编程的窗口,实现代码的可视化管理。如:代码的提示、调试
代码等。

Eclipse

如果使用文本编辑工具编写代码,问题在于没有任何提示,编码效率低;而且不停的需要进行切换【编
辑发现问题–修改源代码】。所以需要使用IDE工具(集成开发环境),在工具中可以直接编写代码,编
译源程序并执行
Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。该软件是IBM使用java开发出来的并开源
的。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse
附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。官方下载网站
eclipse.org
经常用到的是前五个版本:
Eclipse IDE for Java EE Developers:是为J2EE开发的版本
Eclipse Classic:是Eclipse的经典版本,没有安装任何插件,纯净版,需要什么插件可以自己安
装,Java初学者建议使用该版本
Eclipse IDE for Java Developers:适用于Java开发
Eclipse IDE for C/C++ Developers:适用于C/C++开发
Eclipse for Mobile Developers:适用于Java手机开发
Eclipse for RCP/Plug-in Developers:用于RCP和插件开发
可以直接下载zip后缀的文件,这实际就是一个绿色版的Eclipse,解压缩后可以直接使用

熟悉Eclipse基本使用

如果大家感觉启动比较慢的话大家可以修改该软件安装的配置文件eclispe.ini中的堆内存大小。
该软件是以工作区的形式管理所有的项目的,因此大家在启动的时候需要指定一个工作区的目录。注
意:该目录中不要包含中文或空格。

常用快捷键

Alt+/ 内容提示
Ctrl+Alt+↓ 快速的复制当前行
Ctrl+Shift+F 格式化
Ctrl+/ 单行注释,再次使用取消注释
Ctrl+shift+/ 多行注释,取消注释Ctrl+shift+
Ctrl+shift+O 导包语句,该快捷键一次性可以导入多个包
Ctrl+1 快速修复错误,但是该快捷键只能修复小错误

语法基础

Java语言的源程序代码由一个或多个编译单元组成,每个编译单元可包含三个要素:
1、一个包声明(可选)。 package com.yan; 命名空间
2、任意数量引入语句。 import java.util.*;
3、类的声明和接口声明 public class A{}
该三要素必须以上述顺序出现。也就是说任何引入语句出现在所有类定义之前;如果使用包声明,则包
声明必须出现在类和引入语句之前。每个Java的编译单元可包含多个类或接口,但是每个编译单元最多
只能有一个类或者接口是公共的
一个文件中可以定义多个class,但是最多只能由一个public class,因为文件名称必须和public *class类
名称一致(大小写在内);当然在一个文件中的class名称不能重复【实际上在一个包中的类名称不能重
复】,如果文件中没有public class,则文件名称没有约束
Java是一种自由格式的语言,可以用任意个空格、制表符、换行符隔开每个词

1 System.
2 out.
3 println
4 ( "Counted " + count + " chars." );
1 System.
2 out.
3 println
4 ( "Counted " + count + " chars." );

同时也允许将多行代码写在一行上,注意使用分号隔开。所有的语句末尾以分号;收尾
常见的编程错误:
目前的要求:将所有的程序都必须写在方法内部,不能写在方法外
使用临时变量,Java要求必须是先定义后使用,必须是先赋初值后使用

Java标识符

在Java编程语言中,标识符是赋予变量、类或方法的名称。变量、函数、类和对象的名称都是标识符,
程序员需要标识和使用的东西都需要标识符。
标识符可从一个字母(Unicode编码字符集)、下划线_或美元符号$开始,随后也可跟数字、字母、下划线
或美元符号。
标识符是区分大小写,没有长度限制,可以为标识符取任意长度的名字

public class A {
   
public static void main(String[] args) {
   

你可能感兴趣的:(java,笔记,python)