Java特性和优势

简单、面向对象、可移植性、高性能、分布式、动态性、多线程、安全性、健壮性

Java的三大版本

  1. JavaSE 标准版(应用于桌面程序,控制台开发)
  2. JavaME 嵌入式开发(手机,小家电)
  3. JavaEE 企业级开发(Web端, 服务器开发)

JDK、JRE、JVM的区别

JDK:Java Development Kit java开发者工具

JRE:Java Runtime Environment java运行时环境

JVM:Java Virtual Machine java虚拟机

JDK 包含 JRE 和 JVM

编译型语言和解释型语言

  1. 编译型语言:是将源代码编译一些可执行的二进制代码,以后执行不需要再次编译
  2. 解释型语言:源代码翻译成中间代码,再有解释器解释成机器代码运行

    Java语言属于编译-解释型语言,因为其同时具有编译和解释两种特性

    Java代码执行过程:源文件--java编译器编译-->class字节码文件 -->类加载器-->字节码校验器-->解释器-->操作系统平台直接运行

标识符

对于类,属性,对象等的命名属于标识符

标识符的命名规则:

  1. 以字母 A-Z 或 a-z 、$ 、_开头,可以和数字等进行组合
  2. 不可以以 Java 关键字直接命名
  3. 大小写敏感
  4. 可以使用中文,但是不建议使用中文(编码的问题,不利于程序的移植性)

    Java 关键字:abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else

    enum、extends、final、finally、float、for、goto、if、implements、import、instanceof、int、interface、long、native

    new、package、private、protected、public、return、strictfp、short、static、super、switch、synchronized、this、throw

    throws、transient、try、void、volatile、while

    注意:可以百度阿里巴巴 Java 开发手册进行代码规范

数据类型

Java的数据类型分为基本类型和引用类型:

  1. 基本类型(primitive type)

    • 数值型

      1. 整数(byte 一个字节、short 两个字节、int 四个字节、long 八个字节

      2. 浮点数(float 四个字节、double 八个字节)

      3. 字符型 (char 两个字节)
    • 布尔型(Boolean) 一位 只有true和false
  2. 引用类型(reference type) 除了基本类型,其他的类、接口、数组等都属于引用类型

类型转换

  1. 由低到高(称之为自动类型转换,可以直接转换) byte、short、char--->int--->long--->float--->double
  2. 由高到低(称之为强制类型转换,需要考虑精度缺失等问题,小数不会进行四舍五入)
  3. 不能对布尔值进行转换

JavaSE基础--part1的更多相关文章

  1. javaSE基础07

    javaSE基础07 一.static静态修饰符 用了static修饰的变量就会变成共享的属性,只会初始化一次,在内存中只存在一个,并且每个对象都可以访问,存放在方法区(数据共享区) 1.1 stat ...

  2. javaSE基础06

    javaSE基础06 一.匿名对象 没有名字的对象,叫做匿名对象. 1.2匿名对象的使用注意点: 1.我们一般不会用匿名对象给属性赋值的,无法获取属性值(现阶段只能设置和拿到一个属性值.只能调用一次方 ...

  3. javaSE基础05

    javaSE基础05:面向对象 一.数组 数组的内存管理 : 一块连续的空间来存储元素. Int [ ] arr = new int[ ]; 创建一个int类型的数组,arr只是一个变量,只是数组的一 ...

  4. javaSE基础04

    javaSE基础04 一.三木运算符 <表达式1> ? <表达式2> : <表达式3> "?"运算符的含义是: 先求表达式1的值, 如果为真, ...

  5. javaSE基础03

    javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...

  6. javaSE基础02

    javaSE基础02 一.javac命令和java命令做什么事情? javac:负责编译,当执行javac时,会启动java的编译程序,对指定扩展名的.java文件进行编译,生成了jvm可以识别的字节 ...

  7. JavaSE基础01

    JavaSE基础篇01 ------从今天开始,我就学习正式java了,O(∩_∩)O哈哈~,请大家多指教哦 一.Windows常见的dos命令 操作dos命令: win7 --->开始 --- ...

  8. javase基础复习攻略《十》

    按照计划本篇为大家总结JAVA的网络编程,什么叫网络编程呢?网络编程!=网站编程,对于这一点大家一定要注意,很多小朋友都曾经这么认为.既然谈到网络编程,咱们先了解一下网络的基础知识,什么是计算机网络? ...

  9. javase基础复习攻略《二》

    今天就开始的真正走进JAVASE的世界,本篇介绍的是:JAVASE基础语法,大家如果有C语言的基础,对于本节内容一定感觉非常轻松,编程语言之间的都是相通的,只不过C语言属于面向过程编程,而JAVA语言 ...

随机推荐

  1. Python 访问字符串中的值

    Python 访问字符串中的值 Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用.高佣联盟 www.cgewang.com Python 访问子字符串,可以使用方括号来 ...

  2. OKHttp 官方文档【一】

    最近工作比较忙,文章更新出现了延时.虽说写技术博客最初主要是写给自己,但随着文章越写越多,现在更多的是写给关注我技术文章的小伙伴们.最近一段时间没有更新文章,虽有工作生活孩子占用了大部分时间的原因,但 ...

  3. 10分钟了解js的宏任务和微任务

    熟悉宏任务和微任务以及js(nodejs)事件循环机制,在写业务代码还是自己写库,或者看源码都是那么重要 看了部分文档,自己总结和实践了一下 js中同步任务.宏任务和微任务介绍 同步任务: 普通任务 ...

  4. java多线程之锁 -- 偏向锁、轻量级锁、自旋锁、重量级锁

    转载至:https://blog.csdn.net/zqz_zqz/article/details/70233767 之前做过一个测试,详情见这篇文章<多线程 +1操作的几种实现方式,及效率对比 ...

  5. swift 5.0 创建button方法

    class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any ...

  6. Android监听器无法跳转的可能原因之一。。。

    主菜前的厨师前言: 各位大牛,牛崽崽,这是本牛崽第一次写博客,牛崽崽我初出茅庐,但是我会很用心的写自己的每一份随笔,写的不好的大家见谅. 今天就来说说本牛崽在实现监听器时遇到的问题: 本牛崽因为也是刚 ...

  7. Hotspot GC研发工程师也许漏掉了一块逻辑

    本文来自: PerfMa技术社区 PerfMa(笨马网络)官网 概述 今天要说的这个问题,是我经常面试问的一个问题,只是和我之前排查过的场景有些区别,属于另外一种情况.也许我这里讲了这个之后,会成为不 ...

  8. 一篇文章教会你用Python爬取淘宝评论数据(写在记事本)

    [一.项目简介] 本文主要目标是采集淘宝的评价,找出客户所需要的功能.统计客户评价上面夸哪个功能多,比如防水,容量大,好看等等. 很多人学习python,不知道从何学起.很多人学习python,掌握了 ...

  9. Java日志框架(二)

    最流行的日志框架解决方案 按笔者理解,现在最流的日志框架解决方案莫过于SLF4J + LogBack.其有以下几个优点: LogBack 自身实现了 SLF4J 的日志接口,不需要 SLF4J 去做进 ...

  10. Linux文本处理详细教程

    1. 文本处理 本节将介绍Linux下使用Shell处理文本时最常用的工具: find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk: 提供的例子和参数都是 ...