java基础入门

一、计算机基础知识

1.计算机发明者
约翰·冯·诺依曼
世界上第一台计算机诞生于1946年的美国宾夕法尼亚大学。中文名做埃尼阿克,计算机的出现是因为计算弹道轨迹的军事需要。
2.计算机是由硬件和软件组成。

  • 硬件:我们所看见的一些基础的物理设备。(运算器、控制器、存储器、输入设备、输出设备)
  • 软件:可以实现一定的功能,使用硬件设备来进行制定的功能完成。
    包括系统软件(PC端的Windows、Linux、mac等,手机端的IOS、Android)
    和应用软件(日常生活中经常使用的,具有具体功能的软件)
    3.计算机语言发展
  • 机器语言:典型的二进制文件和计算机交流。
  • 汇编语言:通过大量的助记符表示一些基本的操作指令完成计算机沟通。
  • 高级语言:通过常用的英语指令编写程序,完成沟通。(Java就是一种高级计算机语言

二、java语言的历史渊源与发展

1.创始人
java的创始人是詹姆斯*高斯林。
是由SUN(Stanford University Network)公司开发的一门高级编程语言,面向互联网Internet的编程语言。
2.名字起源
Java语言,java是印度尼西亚的一个岛名,因为盛产咖啡,所以也成为java语言的标志。
2.java体系结构
针对不同的开发市场,Sun公 司将Java划分为三个技术平台,分别是JavaSE、JavaEE和JavaME。

  • JavaMe:Java的最小版本,android开发
  • JavaSe:Java的标准版本,基础开发,是其他两个版本的基础
  • JavaEE:Java的企业级版本,主要针对于web应用程序的开发,也就是常说的网页版
    3.语言类型
    java语言是一种面向对象的程序设计语言。
    4.JDK版本
  • JDK1.0
  • JDK1.2 集合体系
  • JDK5 大量新特性:增强for、泛型、并发操作包
  • JDK7 教学主要使用版本,最稳定
  • JDK8 Lambda表达式、函数式编程
  • JDK9、JDK10、JDK11

三、java环境变量的配置

1.Java开发环境
简称JDK,它是整个Java的核心,其中包括Java编译器、Java运行工具、Java文档生成工具、Java打包工具等

  • jdk:Java的开发工具包
  • jre:Java的运行时环境
  • jvm:虚拟机,在某个操作系统上,使用软件的方式,虚拟出来一个主机,主机中的任何操作就和原来的操作系统无关,用于给Java程序 运行的一个容器
    2.jdk环境变量配置
    新建一个系统变量,变量名称JAVA_HOME,配置为jdk的安装路径
    在path变量中,使用%JAVA_HOME%/bin,来表示javac所在的路径
    3.JDK、JRE、JVM的关系
    在这里插入图片描述

四、开发工具与计算机间的交互

1.新建.java*文件*
在比想要新建的磁盘上新建文本文档,并修改文本文档名和后缀(例如:HelloWorld。java
2.用合适的记事本打开.java文件
3.编写java程序并保存
4.打开命令行(3种方式)
(1)开始----所有程序----附件----命令提示符
(2)Windows + R,在弹出的运行窗口中,输入cmd(Command),回车
(3)在要操作的目录中,键盘shift + 鼠标右键,选择“在此处打开命令窗口”
5.Dos命令行中的常用命令:
【切换盘符】:直接写盘符加上冒号即可,例如,D:
【查看目录】:dir,例如,dir
【切换目录】:cd 要切换到的目录,例如,cd 文件夹名称(change directory) 返回上一级目录 cd…
6.编译Java程序命令
在这里插入图片描述
7.运行java程序命令
在这里插入图片描述
8.java文件的编译过程
.java文件先通过编译后形成字节码文件/二进制文件(.class文件),可以在java虚拟机上运行(JVM)
屏蔽了不同的操作系统,兼容性强(write once run anywhere)

五、java语言的特点

1.面向对象
封装 继承 多态 语法更加清晰 所需要资源更少 后期更加利于拓展
2.可移植性
在Java中,数据类型具有固定的大小,这消除了代码移植时令人头疼的主要问题
3.一次编写,到处运行(跨平台性)
通过java编写的应用程序在不同的操作系统下都可以执行 屏蔽了平台差异性
4.安全性
没有指针 提供了内存管理机制 垃圾回收机制 安全机制等
5.健壮的
Java的强制类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证

六、第一个java程序

1.HelloWorld程序

  1  public class HelloWorld {
  2 
  3      public static void main(String[] args) {
  4         System.out.println("Hello World");
  5      }
  6  }

2.HelloWorld 注意事项
(1)找不到文件
一定是自己把文件名称写错了
隐藏了文件的后缀名(组织----文件夹和搜索选项----查看----去掉隐藏已知文件的扩展名)
(2)java、javac不是内部或者外部命令
当前目录下没有java、javac这个可执行程序
没有配置java、javac的环境变量
(3)单词拼接错误
没有区分大小写,例如class写成了Class、public写成了Public,System写成了system
main方法不能写成mian
(4)标点符号一定要是英文状态
建议:在中文状态下输入英文标点
(5)括号一定要成对出现
无论写大括号、中括号、小括号,都一次把成对的括号全都写完,再填充括号中的内容
3.一个java文件只能有一个public类,并且这个public类的类名一定要和文件名相同
4.一个java文件可以有很多类但只能有一个public类
5.一个类对应一个字节码文件
6.Java中有三类注释
//单行注释,/* 多行注释 /,/* 文档注释 */

七、java的基本数据类型及其包装类

1.整型
(1)byte(字节型)
byte数据类型是1字节,8位、有符号的,以二进制补码表示的整数;
最小值是-128(-2^7);
最大值是127(2^7-1);
默认值是0;
(2)short(短整型)
short数据类型是2字节、16位、有符号的以二进制补码表示的整数
最小值是-32768(-2^15);
最大值是32767(2^15 - 1);
默认值是0;
(3)int(整型)
int数据类型是4字节、32位、有符号的以二进制补码表示的整数;
最小值是-2,147,483,648(-2^31);
最大值是2,147,483,647(2^31 - 1);
默认值是0;
(4)long(长整型)
long数据类型是8字节、64位、有符号的以二进制补码表示的整数;
最小值是-9,223,372,036,854,775,808(-2^63);
最大值是9,223,372,036,854,775,807(2^63 -1);
默认值是0L;
后面加L或者l表示是long长整型;
2.浮点型:
(1)float
float数据类型是单精度、4字节、32位、符合IEEE 754标准的浮点数;
float在储存大型浮点数组的时候可节省内存空间;
默认值是0.0f;
后面加F或者f,表示float类型;
浮点数不能用来表示精确的值;
(2)double
double数据类型是双精度、8字节、64位、符合IEEE 754标准的浮点数;
浮点数的默认类型为double类型;
double类型同样不能表示精确的值;
后面加D或者d,表示double类型;
3.布尔型 boolean
boolean数据类型表示一位的信息;
只有两个取值:true和false;
这种类型只作为一种标志来记录true/false情况;
布尔类型不能和其他类型进行转换;
4.字符型 char
char类型是一个单一的16位Unicode字符;
最小值是’\u0000’(即为0);
最大值是’\uffff’(即为65,535);
char数据类型可以储存任何字符;
5.注意
String不是基本类型
6.包装类

基本数据类型包装类
byteByte
booleanBoolean
shortShort
charCharacter
intInteger
longLong
floatFloat
doubleDouble

除了Integer和Character类之外,其它六个类的类名和基本数据类型一致,只需将类名的第一个字母大写即可。
7.包装类作用
能够方便的解决数据转换等问题

八、练习

public class TestDemo {
    public static void main(String[] args) {
        boolean flg = true;
        boolean flg2 = false;
        //没有所谓的0是假   非0是真
        /*int i = (int)flg;
        flg = (boolean) 10;*/
        //不要尝试布尔类型和其他数据类型进行转换
    }

    public static void main1(String[] args) {
        //整型
        int a = 10;//4个字节
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);
        int b = Integer.MAX_VALUE;//最大值+1
        System.out.println(b + 1);
        int c = Integer.MIN_VALUE;//最小值-1
        System.out.println(c - 1);
        System.out.println("hello");
    }

    public static void main2(String[] args) {
        int a = 10;//局部变量
        //在Java当中  局部变量定义了之后一定要赋值
        //System.out.println(a);
    }

    public static void main3(String[] args) {
        long b = 10L;//8  可移植性
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);
        System.out.println(b);
    }

    public static void main4(String[] args) {
       /* double d = 12.5;//8  CTR+SHIFT+/
        System.out.println(d);
        System.out.println(Double.MAX_VALUE);
        System.out.println(Double.MIN_VALUE);
        */
        //小数没有精确的   int a = 10;
        double a = 1.1;
        double b = 1.1;
        System.out.println(a * b);

        int c = 1;
        int d = 2;
        System.out.println(c / d);
    }
        public static void main5(String[] args) {
            float f = 12.5f;//4
            System.out.println(f);
        }
        public static void main6(String[] args){
            String ch = "abc";
            char ch2 = 'a';//2
            System.out.println(ch2);
            char ch3 = '高';
            System.out.println(ch3);
            char ch4 = 97;
            System.out.println(ch4);
//        char ch5 = -9;  不能表示负数
//        System.out.println(ch5);
        }
            public static void main7(String[]args) {
                byte b = 127;//1   -128 -  127
                int d = 2147483647;
                byte c = 10;
                byte e = 20;
                byte f = (byte) (c + e);// (byte) 强制类型转换
                //整型提升
                int i = 10;
                i = c;
                long l = 20;
                long i2 = i + l;//整型提升
            }
            public static void main8(String[] args) {
                short sh = 10;//2  15
                System.out.println(sh);
            }
        }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值