JAVA全栈学习day01(java入门)

1、java语言发展史

  1. java语言
    • 语言:人与人交流沟通的表达方式
    • 计算机语言:人与计算机进行信息交流沟通的特殊语言

java 语言是美国sun公司(Stanford University Network)在年推出的计算机语言

java之父:詹姆斯·高斯林(James Gosling)

  1. java语言发展史
java版本发布年份
java1.01996
java1.11997
java1.2(革命性版本)1998
java1.32000
java1.42002
java5.0(更新力度太大)2004
java6.02009
java7.02011
java8.0(甲骨文公司收购)(公司开发常用)2014
java9.02017年9月
java10.02018年3月
java11.0(前两个为过度版本,学习常用)2018年9月
  1. java版本
    • javaSE:标准版,定位在个人计算机上的应用。
    • javaEE:企业版,定位在服务器端的应用。
    • javaME:微型版,定位在消费性电子产品的应用上。(会被安卓开发取代)

2、常见编程语言

  1. c语言

    诞生于1972年,可以称之为现代高级语言的鼻祖,由著名的贝尔实验室发明。

  2. c++语言

    作为c语言的扩展,结合了面向对象编程。科学计算、操作系统、网络通信、系统开发、引擎开发中仍然被大量使用。

  3. java语言

    Java广泛应用于企业级软件开发、安卓移动开发、大数据云计算等领域,几乎涉及IT所有行业。

  4. PHP语言

    PHP语言,一般用于WEB开发领域;大量的中小型网站以及某些大型网站使用PHP开发。

  5. Object-C和Swift语言

    Object-C通常写作Objective-C或者Obj-C或OC,是根据C语言所衍生出来的语言,继承了C语言的特性,是扩充C的面向对象编程语言。OC主要用于苹果软件的开发。

  6. JavaScript语言

    JavaScript是一种脚本语言,已经被广泛用于Web应用开发;应用范围越来越大,重要性越来越高。目前,流行的H5开发的核心其实就是JavaScript语言。

  7. python语言(胶水语言)

    Python广泛应用于:图形处理、科学计算、web编程、多媒体应用、引擎开发;尤其是在未来大热方向机器学习和人工智能上有非常大的潜力。

  8. c#语言

    微软发布的,和java非常像。开发基于Windows桌面的首选。

  9. Fortran语言

    主要用在需要复杂数学计算的科学和工程领域。现在仍然被广泛使用,尤其是工程领域。

  10. Basic语言

    虽然易学,但功能不够强大,应用到大程序的有效性令人怀疑。已经逐步退出历史舞台。

  11. COBOL语言

    主要用于大量精确处理数据的商业领域中,比如金融、银行。今天,仍然有超过一半的商业软件使用COBOL编写。

  12. Pascal语言

    Pascal语言语法严谨,层次分明,程序易写,可读性强,是第一个结构化编程语言。只限于大学教育。

3、java核心优势

  1. 跨平台、可移植性(核心)

  2. 安全性:适合于网络/分布环境,容易构建防病毒,防篡改系统。

  3. 面向对象:适合大型软件设计开发。

  4. 简单性:是c++简化版,去掉了一些内容,例如:头文件,指针运算,结构,联合,操作符重载,虚基类等等。

  5. 高性能:Java语言本身发展中通过虚拟机的优化提升了几十倍运行效率。初期是性能低。

  6. 分布式: Java是为Internet的分布式环境设计的,因为它能够处理TCP/IP协议。事实上,通过URL访问一个网络资源和访问本地文件是一样简单的。Java还支持远程方法调用(RMI,Remote Method Invocation),使程序能够通过网络调用方法。

  7. 多线程:多线程的使用可以带来更好的交互响应和实时行为。

  8. 健壮性:Java程序不可能造成计算机崩溃。如果出现某种出乎意料之事,程序也不会崩溃,而是把该异常抛出,再通过异常处理机制加以处理。

4、java应用程序的运行机制

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GFMXrCtz-1651504437166)(TyporaIMG/Untitled/1494836063440655.png)]

5、JVM、JDK和JRE

  • JVM(java虚拟机,Java Virtual Machine)就是一个虚拟的用于执行bytecode字节码的”虚拟计算机”。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。JVM负责将Java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。不同的环境有不同的虚拟机。
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HaIaRODU-1651504437167)(TyporaIMG/Untitled/1494837984812122.png)]
  • JRE(java运行环境,Java Runtime Environment)包含:Java虚拟机、库函数、运行Java应用程序所必须的文件。
  • JDK(java编译器, Java Development Kit )包含JRE,以及增加编译器和调试器等用于程序开发的文件。
    在这里插入图片描述

6、JDK下载和安装,以及配置环境变量

  1. 下载

官网地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

安装好的jdk安装路径下:

bin目录是存储一些可执行的二进制文件;

lib存储相关的jar包;

src.zip是jdk相关的java类的源代码。

  1. 配置环境变量
  1. 右击计算机——》属性——》高级系统设置;
  2. 单击环境变量按钮;
  3. 单击新建按钮,新建JAVA_HOME变量(用于说明JDK的安装目录);
  4. 修改系统环境变量Path,在最前面追加%JAVA_HOME%\bin 并以;

注意:jdk1.5之后不需要配置classpath。

  1. 测试jdk安装成功(win+r打开cmd)
    在这里插入图片描述

7、示例开发

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

(1)打开cmd,进入保存文件的目录
(2)编译:javac Welcome.java(编译生成一个class文件)
(3)执行:java Welcome

8、java小总结

  1. Java对大小写敏感,如果出现了大小写拼写错误,程序无法运行。
  2. 关键字public被称作访问修饰符(access modifier),用于控制程序的其它部分对这段代码的访问级别。
  3. 关键字class 的意思是类。Java是面向对象的语言,所有代码必须位于类里面。
  4. 一个源文件中至多只能声明一个public的类,其它类的个数不限,如果源文件中包含一个public 类,源文件名必须和其中定义的public的类名相同,且以“.java”为扩展名。
  5. 一个源文件可以包含多个类class。
  6. 正确编译后的源文件,会得到相应的字节码文件,编译器为每个类生成独立的字节码文件,且将字节码文件自动命名为类的名字且以“.class”为扩展名。
  7. main方法是Java应用程序的入口方法,它有固定的书写格式:
  8. public static void main(String[] args) {…}
  9. 在Java中,用花括号划分程序的各个部分,任何方法的代码都必须以“{”开始,以“}”结束, 由于编译器忽略空格,所以花括号风格不受限制。
  10. Java中每个语句必须以分号结束,回车不是语句的结束标志,所以一个语句可以跨多行。

9、常见的dos命令

命令作用
cd 目录路径进入一个目录
cd …进入父目录
dir查看本目录下的文件和子目录列表
cls清空屏幕
tab自动补齐命令

10、java常用开发工具

  1. 记事本

    (1)Notepad++

    (2)UItraEdit

    (3)EditPlus

  2. 开发集成环境

    (1) eclipse官方网址:http://www.eclipse.org

    (2) IntelliJ IDE官方网:http://www.jetbrains.com/idea/

    (3) NetBeans 官方网址:https://netbeans.org/

11、eclipse

  1. 下载地址:http://www.eclipse.org/downloads/eclipse-packages/

不需要安装,解压就可以使用

  1. 创建一个小项目

【项目】桌球游戏小项目

练习目标:

1.找到敲代码的感觉

2.收获敲代码的兴趣

3.作出效果,找到自信

4.从一开始就学会调试错误

5.掌握Java代码基本结构

项目需求:

桌球在球桌中按照一定线路和角度移动,遇到边框会自动弹回。
在这里插入图片描述
在这里插入图片描述
代码:

import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;

import javax.swing.JFrame;

public class BallGame extends JFrame{
	Image ball=Toolkit.getDefaultToolkit().getImage("images/ball.png");
	Image desk=Toolkit.getDefaultToolkit().getImage("images/desk.jpg");
	double x=100; //小球的横坐标
	double y=100;//小球的纵坐标
	double degree = 3.14/3;    //弧度。此处就是:60度
	//化窗口的方法
	public void paint(Graphics g) {
		System.out.println("窗口被画了一次!");
		g.drawImage(desk, 0, 0, null);
	    g.drawImage(ball,(int)x, (int)y, null);
	  
		x  = x+ 10*Math.cos(degree);
        y  = y +10*Math.sin(degree); 
         
        //碰到上下边界
        if(y>500-40-30||y<40+40){//500是窗口高度;40是桌子边框,30是球直径;最后一个40是标题栏的高度
            degree = -degree;
        }
//         
//        //碰到左右边界
        if(x<40||x>856-40-30){
            degree = 3.14 - degree;
        }
	}
	//窗口加载
	void launchFrame() {
		setSize(856,500);
		setLocation(50,50);
		setVisible(true);
		
		//重画窗口,每秒画25次
        while(true){
            repaint(); 
            try{
                Thread.sleep(30);   //40ms,   1秒=1000毫秒.  大约一秒画25次窗口
            }catch(Exception e){
                e.printStackTrace();
            }
             
        }
	}
	public static void main(String[] args) {
		
		BallGame bg=new BallGame();
		bg.launchFrame();
		
	}

}

12、练习题

一、选择题

  1. 以下( C )不是Java的特点。(选择一项)

A.平台无关性
B.高可靠性和安全性
C.指针运算
D.分布式应用和多线程

  1. 以下选项中关于Java跨平台原理的说法正确的是( AC)。(选择二项)

A Java源程序要先编译成与平台无关的字节码文件(.class),然后字节码文件再被解释成机器码运行
B. Java语言只需要编译,不需要进行解释
C. Java虚拟机是运行Java字节码文件的虚拟计算机。不同平台的虚拟机是不同的
D. Java语言具有一次编译,到处运行的特点,可以在所有的平台上运行

  1. 以下选项中是对一个Java源文件进行正确编译的语句是( D )(选择一项)

A. java Test
B. java Test.class
C. javac Test
D. javac Test.java

  1. 在Java中,源文件Test.java中包含如下代码,则程序编译运行的结果是( B)。(选择一项)
public class Test {
	public static void main(String[ ] args) { 
    	system.out.println("Hello!");
	}
}

A 输出:Hello!
B. 编译出错,提示“无法解析system”
C. 运行正常,但没有输出任何内容
D. 运行时出现异常

  1. 有一段Java 程序,其中public类名是A1,那么保存它的源文件名可以是( A )。(选择一项)

A. A1.java
B. A1.class
C. A1
D. 都不对

二、简答题

  1. 计算机语言发展史中的主线。

    答:第一代:机器语言;第二代:汇编语言;第三代:高级语言(c语言,c++,java,object-c,c#)

  2. Java的跨平台的实现原理。

    答:Java源代码经过编译,生成字节码文件,交由Java虚拟机来执行,不同得系统有不同得JVM,借助JVM实现跨平台。

  3. JDK、JRE、JVM 的区别和联系。

    答:jdk是java开发工具包,包含jre和jvm;jre是java运行环境,包括jvm;jvm是java虚拟机。

  4. Java程序的开发和执行过程。

    答:创建java文件;编写java代码;编译java源程序;执行生成的字节码文件。

  5. 环境变量Path的作用和配置。

    作用:可以在任意路径下执行javac命令;

    配置:打开高级环境设置》配置JAVA_HOME》在path中添加java_home》保存退出。

三、上机操作

  1. 使用记事本编写第一个Java程序。
public class Test{
    public static void main(String[] args){
        System.out.println("Hello java!");
    }
}
  1. 使用记事本编写Java程序(重点练习打印语句System.out.println()),开发学生管理系统主菜单界面

​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-inwP8mBl-1651504437169)(TyporaIMG/Untitled/1508466235430156.png)]

public class Test2{
    public static void main(STring[] args){
		 System.out.println("=====================");
	     System.out.println("\t主菜单");
	     System.out.println("\t1.注册");
	     System.out.println("\t2.登录");
	     System.out.println("\t3.帮助信息");
	     System.out.println("请选择:");
	     System.out.println("=====================");
    }
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值