Java学习(1)_绪论和概述

一、计算机相关概念

  • 时钟速度(主频)越快,给定时间内执行的指令就越多;
  • 内存(RAM)中字节的内容永远非空,但是原始内容可能对于程序毫无疑义或有害,所以要养成赋初值的习惯。

二、Java语言相关概念

  1. 术语及缩写

    • JLS(Java Language Specification)Java 语言规范;
    • API(Application Program Interface)应用程序接口。JLS是稳定的,但是API是不断拓展的;
    • Java版本:
      Java SE(Java Standard Edition)用于开发客户端独立应用程序(桌面开发);
      Java EE(Java Enterprise Edition)用于开发服务端应用程序(web开发);
      Java ME(Java Mobile Edition)用于开发移动端应用程序(手机开发);
    • JVM(Java Visual Machine)Java 虚拟机。使用JVM是我为了实现平台无关性,一般的高级语言要在不同平台运行,至少要编译成不同的目标代码,而引入了JVM后,屏蔽了与不同平台相关的信息,使得Java编译程序只需要生成在JVM上运行的字节码,JVM在执行字节码时,把字节码解释成具体平台上的机器指令执行;
    • JRE(Java Runtime Envioronment)Java 运行环境,是提供给用户运行的,包含JVM和基础类库;
    • JDK(Java Development Kit)Java 开发工具包,如Java SE 6对应JDK 1.6。提供给开发者使用,包括JRE,还包括编译器、调试工具等;
    • IDE(Integrated Development Environment)集成开发环境。
  2. Java程序编写运行流程

    • 源文件扩展名必须是 .java ,文件名必须与功用类名完全相同,一个源文件只能有一个公共类,其中有main方法;
    • 编译命令:

      javac Welcome.java

      此命令执行后Java编译器将Java源文件翻译成字节码文件。若没有编译错误,会生成一个扩展名为 .class 的字节码文件。

    • 运行命令:

      java Welcome

      执行Java程序就是运行程序的字节码,此过程就是一次将字节码中单独的一步翻译为目标机器语言代码,而不是将整个程序翻译成单独的一块。翻译完一步之后就立即执行这一步,一句一句地翻译执行

三、基本程序设计

  1. 命名规则

    • 报名时全小写的名词,中间由点分隔;
    • 类名首字母大写,通常由多个单词构成,每个单词首字母大写;
    • 方法名第一个词为动词,驼峰;
    • 变量名全小写;
    • 常量名全大写;
  2. 关于堆内存和栈内存

    摘自博客园(花落花相醉著)

  3. 数值数据类型及其运算

    3.1 数据类型

    • byte, 8位带符号数,1字节;
    • short, 16位带符号数,2字节;
    • int, 32位带符号数,4字节;
    • long, 64位带符号数,8字节;
    • float, 32位浮点数,4字节;
    • double,64位浮点数,8字节;

    在标准c++中,int的定义长度要依靠你的机器的字长,也就是说,如果你的机器是32位的,int的长度为32位,如果你的机器是64位的,那么int的标准长度就是64位,比如16位机上,sizeof(int) = 2,而32位机上sizeof(int) = 4;32位机上sizeof(long) = 4,而64位机上sizeof(long) = 8。

    但是在32位机器和64机器中int类型都占用4个字节,因为一般编译器可以根据自身硬件来选择合适的大小,但是需要满足约束:short和int型至少为16位,long型至少为32位,并且short型长度不能超过int型,而int型不能超过long型。这即是说各个类型的变量长度是由编译器来决定的,而当前主流的编译器中一般是32位机器和64位机器中int型都是4个字节(例如,GCC)。

    3.2 数值类型转换

    运算中Java会自动将操作数转化为范围最大类型的操作数的类型。如, 3 * 4.5 即为 3.0 * 4.5 ,自动转换为浮点值。

    3.3 注意点

    • 若几个变量为同一类型,允许一起声明他们;
    • 变量定义要付出之,以避免不必要的麻烦;
    • 常量定义要用 fianl 字符;
    • 为了表示long型整数直接量,需要在其后追加字母 L
    • 浮点型直接量带小数点,默认情况下是double类型的,可以通过在其后追加字母 F 表示该数是float类型;
    • 用到除法时要特别注意,Java中两数相除为整数,若需要小数要进行类型转换,如 5/9 要写成 5.0/9
  4. 字符数据类型及其运算

    4.1 编码

    • Java使用Unicode,2个字节表示1个字符,包含ASCII码;
    • ASCII码:0(48); A(65); a(97);

    4.2 字符数据类型char与数值型数据之间的转换

    • 将一个整数转换成char,只用到该数据的低16位,其余部分被忽略;
    • 将一个浮点值转化成char时,首先将浮点值转化为int,然后将整数值转化为char;
    • char型数据转换成字符型时,这个字符的统一码就被转换成某个特定的数值;
    • 所有数值运算都可以用在char型操作数上,如果另一个操作数是数字或字符,则char型操作数自动转换成数字;若另一个操作数是字符串,字符就会与该字符串相连。
  5. 运算符优先级

    Java运算符优先级

  6. STH

    • Unix时间戳
      调用System.currentTimeMillis()方法,返回1970年1月1日00:00分开始到当前时刻的毫秒数。
    • String类型
      引用类型, import java.lang.String
    • Scanner 对象从控制台读取输入(后面学习)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值