Java基础知识

一. Java的语言特点

  1. 面向对象(贴近人类思维模式,模拟现实世界,解决现实问题)
  2. 简单性(自动内存管理机制,不易造成内存溢出;简化流程处理、语义清晰)
  3. 跨平台(操作系统、服务器、数据库)

二. 计算机的执行机制

编译执行:

  1. 将源文件编译成平台相关的机器码文件,一次编译,多次执行。
  2. 执行效率高,不可跨平台。

解释执行:

  1. 将源文件交给不同的平台独有的解释器。
  2. 执行效率低,可以跨平台。

三. Java的执行机制

先编译、再解释:

  1. 将源文件编译成字节码文件(平台中立文件.class),再将字节码文件进行解释执行。
  2. java的设计理念:Write Once Run Anywhere

四. 名词解释

  1. JVM(Java Virtual Machine)虚拟机:使用软件在不同操作系统中,模拟相同的环境
  2. JRE(Java Runtime Environment)运行环境:包含JVM和解释器,完整的Java运行环境
  3. JDK(Java Development Kit)开发环境:包含JRE+类库+开发包工具(编译器+调试工具)

五. 类的阐述

  1. 同一个源文件中可以定义多个类
  2. 编译后,每个类都会生成独立的.class文件
  3. 一个类中,只能有一个主方法,每个类都可以有自己的主方法。
  4. Public修饰的类成为公开类,要求类名必须与文件名称完全相同,包括大小写。
  5. 一个源文件中,只能有一个公开类

六. Package

  1. 作用:类似于文件夹,用于管理字节码(.class)文件
  2. 语法:package 包名;(小写)
  3. 位置:必须写在源文件的第一行。
  4. 带包编译:javac -d . 源文件名称.java(自动生成目录结构)
  5. 带包运行:java 包名.类名(包名+类名又称为全限定名)
  6. 采用域名倒置的规则:www.baidu.com.cn -> cn.com.baidu.xxx

七. 编码规范

书写格式

  1. 层级之间必须缩进(Tab:一个制表符)
  2. 一行只写一句代码

代码注释

  1. 单行注释://单行注释
  2. 多行注释:/* 多行注释 */
  3. 文档注释:/** 文档注释 */(生成外部文档:javadoc -d . HelloWorld.java)
  4. 注释不参与编译

标识符命名

  1. 语法规定:可以由字母、数字、_、$,组成,但不能以数字开头
  2. 不能与关键字、保留字重名

八. 约定俗成

  1. 望文生义、见名知意
  2. 类名由一个或多个单词组成,每个单词首字母大写(pascal)
  3. 函数名、变量名由一个或多个单词组成,首单词首字母小写,拼接词首字母大写(camel)
  4. 包名全小写,只可以使用特殊字符“.”,并且不可以“.”开头或结尾
  5. 常量全大写,多个单词用_连接

05_Java基础知识的更多相关文章

  1. .NET面试题系列[1] - .NET框架基础知识(1)

    很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...

  2. RabbitMQ基础知识

    RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...

  3. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  4. selenium自动化基础知识

    什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...

  5. [SQL] SQL 基础知识梳理(一)- 数据库与 SQL

    SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...

  6. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  7. [SQL] SQL 基础知识梳理(三) - 聚合和排序

    SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...

  8. [SQL] SQL 基础知识梳理(四) - 数据更新

    SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...

  9. [SQL] SQL 基础知识梳理(五) - 复杂查询

    SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...

随机推荐

  1. Solution -「CF1373G」Pawns

    小清新线段树题(( 每个位置的边只能向靠右的三个方向走,最后要走到一条基准线上.即对于一个点 \((x, y)\),它最后应该落在 \((k, y + |k - x|)\). 士兵可以一个一个进行移动 ...

  2. FPGA开发流程(创建工程,选择芯片,变量位置,文件命名,reg和wire数据类型,开发流程)

    开发流程(以二选一选择器为例) 1.设计定义:设计一个可以从两个输入端中选择其中一个并输出的逻辑电路 2.设计输入 2.1.逻辑抽象:三个输入端,一个用来选择,记sel,另两个被选择,记a,b,加上一 ...

  3. ACWing94. 递归实现排列型枚举

    题面 把 1∼n 这 n个整数排成一行后随机打乱顺序,输出所有可能的次序. 输入格式 一个整数 n. 输出格式 按照从小到大的顺序输出所有方案,每行 1 个. 首先,同一行相邻两个数用一个空格隔开. ...

  4. 带你熟悉云网络的“电话簿”:DNS

    摘要:无论你域名怎么解析,最终我还是要用IP和别人通信的.域名只是你的皮囊,IP才是你的灵魂. 本文分享自华为云社区<<跟唐老师学习云网络> - DNS电话簿>,作者: tsj ...

  5. css基础04

    所有浮动都是贴着浮动的.一左一右的话就毫无联系了. 浮动元素和标准流是两个级别了,浮起来了,后面的人会补上空缺的位置,让其他标准流的盒子占有. 很容易形成叠加效果,(蓝色的标准流会上去补上浮动的位置, ...

  6. SpringBoot定时任务 - 经典定时任务设计:时间轮(Timing Wheel)案例和原理

    Timer和ScheduledExecutorService是JDK内置的定时任务方案,而业内还有一个经典的定时任务的设计叫时间轮(Timing Wheel), Netty内部基于时间轮实现了一个Ha ...

  7. 技术分享 | 浅谈mysql语法解析调试方法

    欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 本文向您介绍一种利用mysql解析器和bison的调试选项进行sql语法解析跟踪 ...

  8. [HFCTF2020]EasyLogin-1|JWT身份伪造

    1.打开之后只有一个登陆界面和注册界面,右键检查发现app.js代码,结果如下: app.js代码如下: /** * 或许该用 koa-static 来处理静态文件 * 路径该怎么配置?不管了先填个根 ...

  9. Github文件在线加速下载

    众所周知,GitHub是一个巨大的开源宝库,以及程序员和编程爱好者的聚集地,诸多优秀的开源项目全部都是位于GitHub上.但是每当我们看到优秀的开源项目,准备去下(bai)载(piao)时,会发现速度 ...

  10. 造序列(构造,DP)

    题面 Sample Input 7 8 7 10 31 20 100 869120 Sample Output 6 1 1 4 5 1 4 7 1 9 1 9 8 1 0 8 1 9 4 9 1 0 ...