Java基础(自己总结)

加粗样式

2.java概述

2.1概念

java是一门面向对象的语言,而之前学习的C语言是面向过程的语言,C++是面向对象的一门语言。

2.2为什么学习java语言

java目前是一门使用最为广泛的语言之一;

java还有许多特性:简单性、分布式、可移植性、健壮性、多平台独立性、动态性等。

java拥有极高的跨平台能力;(编写桌面的应用程序、WEB应用程序、嵌入式系统应用程序、分布式系统的开发等)

java高端路线——大数据?

Hadoop技术最多用的是java、HBase。掌握java

2.3java能干嘛(就业方向)
  • 安卓应用
  • 在金融行业应用的服务器程序
  • 网站的设计(电子商务的网站
  • 嵌入式领域
  • 大数据技术
2.4技术架构

JAVASE--------标准版

JAVAEE--------企业版

JAVAME-------微型版

2.5JVM/JDK/JRM的概述
2.5.1什么是跨平台

平台:指的就是操作系统(Windows、Linux、Mac

跨平台:java程序可以运行在不同的操作系统上,一次编译到处运行

原理:实验跨平台需要Java虚拟机JVM(Java Virtual Machine

2.5.2JVM/JDK/JRE
  • 什么是JVM

    JVM就是Java虚拟机,Java程序需要运行在虚拟机上,不同的平台都有自己的虚拟机,所以Java语言是跨平台的。

  • 什么是JRE

    包括Java虚拟机(JVM)和Java程序所需要的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE就可以完成。

    JRE=JVM+核心类库

  • 什么是JDK

    JDK是提供给我们开发人员使用的、其实里边已经包含了Java开发工具,当然也包括JRE。如果你安装了JDK,就不用单独再安装JRE了。

    JDK=JRE+Java开发工具

  • JDK、JRE、JVM的关系和作用。

    JDK包括JRE和开发工具

    JRE包括JVE和核心类库

2.6常用的DOS命令

2.6.1打开控制台

Win+R,输入cmd

2.6.2熟悉一下常用的命令

  • d::回车——盘符的切换
  • dir:列出当前目录下的所有的文件和文件夹
  • cd:改变指定目录(进入相对应用的目录)
  • cd…:回退
  • cls:清屏操作
  • exit:退出dos命令行

练习:利用dos命令找到电脑里面的jdk路径,jre路径

2.7环境变量的配置
  • JDK的下载(不演示)

    通过官方网站获取JDK(www.oracle.com)

    下载的时候注意:不同操作系统,下载不同版本(32位和64位)。

  • JDK的安装

    傻瓜式安装,下一步即可。

    建议安装的时候,用英文路径。不要用中文或者带符号还有带空格等。

  • 为什么要配置

    Java程序的编译和运行使用Java和Java命令,所以只能在bin目录下写程序。

    在实际开发中,不肯能把所有的程序都放到bin目录下,最好的方法就是可以在任意目录下能够访问Javac和Java。

  • 如何配置

    创建新的变量名称:JAVA_HOME

    【计算机】----->右击【属性】------>【高级系统设置】------->【环境变量】------->【系统变量】

    变量值:JDK的安装路径

    【Path】

    在最后面添加;%JAVA_HOME%\bin;即可也可以在最前边加%JAVA_HOME%\bin;

2.HelloWorld案例

2.1需求分析

第一个见到的程序。

2.2技术分析

在命令行模式,输入javac命令对源代码进行编译,生成了字节码文件

javac原文件名.java

编译完成后,如果没有报错,那么我们进行java命令对字节码文件进行执行,执行时不需要添加.class扩展名

java HelloWorld

2.3步骤分析
2.4代码实现
public class HelloWorld{
    public static void main(String[] args){
        System.out.println("HelloWorld!!!");
    }
}
2.5扩展内容

常见问题:

  • 文件名隐藏
  • 单词拼写的错误(Class/string/main)
  • 中文符号在输出语句的最后面使用中文分号
  • 括号的匹配{ () }

4.注释

A:什么是注释

用来解释说明程序的文字

B:Java中的注释分类

单行注释://注释文字

多行注释:/ * 注释文字 * /

文本注释:*/** **注释文字 **/

C:注释的作用

  • 解释说明程序,增加可读性。
  • 帮助我们更好地去寻找程序的错误。

Doc文档注释生成:javadoc -d存放的路径 例如javadoc -d**(中间有一个空格)** .\\11 HelloWrold.java

HelloWorld.java

5.关键字

A:概述

被java语言给定的特定含义的单词

B:特点

组成关键字的字母都是小写的。

常用的代码编辑器,针对关键字会有特殊的颜色标记,比较直观。这里建议关键字不需要死记硬背。

C:常用的关键字

在这里插入图片描述

6.变量的案例

A:概念

在程序执行的过程中,它的值一直不发生改变的量。

B:常量的分类

  • 整数常量:所有的整数(234,250)
  • 小数常量:所有的小数(3.1415926,6.66)
  • 字符常量:由单引号引起来的内容(‘a’,‘A’,‘0’)
  • 字符串常量:由双引号引起来的内容(“HelloWorld”)
  • 布尔常量 特殊:只有true和false
  • 空常量:null(数组中学到)

练习:使用工具

5.变量

5.1需求分析

A:定义

存数的。容器。代词,指的就是所存的那个数。例如 Person p;(用p代替Person)

B:声明

int a;//声明一个整型的变量,叫a;

int a,b,c,d;//声明三个整型的变量,叫b,c,d

C:初始化

  • 声明的时候同时初始化

    int a = 666;

  • 先声明后初始化

    int a;

    a = 666;

5.2技术分析

使用:

见代码。

4.3步骤分析
4.4代码实现



5.5扩展内容

变量的命名:

由字母、数字、下划线组成,但是不能由数字开头。

不能使用关键字

可以用中文命名,但是不建议使用中文。

建议“见名知意“ ”驼峰命名法“

例如 : score,myScore,myJavaScore-------驼峰命名法

帕斯卡命名法-------Score,MyScore,MyJavaScore—类

5.6二进制转换

10进制和二进制转换。

例如 13----1101

5.7计算机中的存储单元

位:bit

字节:byte

1B = 8bit

1KB = 1024B

1M = 1024KB

1GB = 1024M

6.数据类型的案例

6.1需求分析

A:为什么有数据类型?

java是一门强类型的语言,对于每一种数据的定义都会有明确的规定,在内存中分配不同的大小的

内存空间。

B:数据类型的分类

基本数据类型:

整型:byte,short,int,long

浮点型:float,double

字符类型:char

布尔类型:boolean

引用数据类型:数组,借口,类等。后期学习。

6.2技术分析

byte:

  • byte数据类型:8位,占1个字节。

  • 最小值:-128-------2^7

  • 最大值127 ------- 2^-7

  • 默认值是0

  • byte在大型数据组中使用,主要的目的就是为了节约内存空间,因为byte占得空间

    只有int得四分之一。

short:

  • short数据类型:16位,占2个字节
  • 最小值:-32768-------- -2^15
  • 最大值:32767------- 2^15-1
  • 默认值是0

int:

  • int数据类型:32位,占4个字节
  • 最小值 :-2^31 20E左右
  • 最大值: 2^1-1
  • 默认值是0

long:

  • long数据类型:64位,占8个字节
  • 最小值
  • 最大值
  • 默认值是0L

float:

  • float数据类型:32位,占4个字节
  • 最小值
  • 最大值
  • 默认值是0.0f
  • 不能用来表示精确的数字

double:

  • double数据类型:64位,占8个字节
  • 最大值
  • 最小值
  • 默认值是0.0d

char:

  • char数据类型:16位,占2个字节
  • 最大值65535
  • 最小值‘\u0000’---------0
  • 默认值是

boolean:

  • 只有两个值:true和false
  • 默认值是false
  • 一般用来做标记记录的。
6.3步骤分析

DataTypeDemo

6.4代码实现

数据类型的强制转化
在这里插入图片描述

6.5扩展内容

Erp财务------BigDecimal--------后期

驼峰命名法:

  • 包名:无论由几个单词组成,所有的字母全部都是小写,每一个单词之间

    用.隔开。www.baidu.com,com.baidu.exer;cn.tedu.exer;

  • 类名、接口名:如果是由多个单词组成,每一个单词首字母大写------HelloWorld Demo

  • 变量名、方法名:如果是多个单词组成,第一个单词的首字母小写,其余首字母大写。age maxAge getAge()------方法名

  • 常量名:无论由几个单词组成,所有的字母都是大写,每一个单词之间都要用_隔开。 LEFT LEFT_UP

    WIDTH=666;HEIGHT=900;

Scanner的用法:

1)导包:在package import java.util.Scanner (C:include)

2)创建对象:

main(): Scanner scanner = new Scanner(System.in);

3)接收数据:

scanner.nextInt();

S建一个ScannerDemo的类,运用一下

6.6练习-------3分钟

1.创建类AgeRange,要求:
​ 接收用户输入的年龄age,并输出

package cn.tedu.demo;
import java.util.Scanner;
public class AgeRange {

public static void main(String[] args) {
	// TODO Auto-generated method stub
	Scanner scanner = new Scanner(System.in);
	System.out.println("请输入你的年龄:");
	int age = scanner.nextInt();
	System.out.println("年龄:" + age);
	
}

}

2.创建类LeapYear,要求:
​ 接收用户输入的年份year,并输出

package cn.tedu.demo;

import java.util.Scanner;

public class LeapYear {

public static void main(String[] args) {
	// TODO Auto-generated method stub
	Scanner scanner = new Scanner(System.in);
	System.out.println("请输入年份:");
	double year = scanner.nextDouble();
	System.out.println("年份" + year);
}

}

5.运算符的案例

5.1需求分析

1)算术运算符:+ - * / % ++ –

2)关系运算符:> < >= <= == (还可以直接比较是否相等) != boolean

3)逻辑运算符:&& || !

4)赋值运算符:= += -= *= /=

5)三目/条件运算符:boolean ? 数字1: 数字2;

6)字符串连接:+

5.2技术分析
5.3步骤分析
5.4代码实现

package cn.tedu.day03;
//这是一个比较数据的实例
import java.util.Scanner;

public class OperatorDemo {

public static void main(String[] args) {
	//TODO Auto-generated method stub
	int x = 2;
	int y = 5;
	//ait + /
	System.out.println(x + y);//7
	System.out.println(x - y);//-3
	System.out.println(x * y);//10
	System.out.println(x / y);//0
	
	System.out.println(x++);//2
	System.out.println(x--);//3
	
	int x1 = 6;
	int x2 = 3;
	System.out.println(++x1);//7
	System.out.println(--x2);//2
	
	//逻辑运算符   短路与(并且)
	//只要是有一个为假都为假   false
	//&&     x && y  
	//       0    1        0
 	//       1    1        1
	//       1    0        0
	//       0    0        0
	int m = 8;
	int n = 6;
	boolean p = m < n && m ++<7;
	System.out.println(p);//false
	//   ||  或     只要是有一个为真都为真。true
	boolean p1 = m < n || m ++ <17;
	System.out.println(p1);//true
	
	//赋值运算符---自带强转功能的用法
	int m1 = 12;
	//面试题,笔试题
	short a = 6;
	a +=20;//a = (short)(a + 20);
	System.out.println(a);//26
	
	//+
	System.out.println("身高" + a);
	//分别输出m和n
	System.out.println(m + "," + n);
	
	//三目运算符 boolean? 数字1:数字2;
	int c = 33;
	int d = 88;
	int max = c > d? c: d ;
	System.out.println("max = " + max);
	if(c > d) {
		int max1 = c;
	}
	/*
	 * 练习:
	 * 1.键盘输入两个数据,并对这两个数据执行
	 * 乘法运算,得到结果
	 * 2.键盘输入三个数字,获取三个数字中的最大值,
	 * 输出最大值
	 * 3.键盘输入两个数据,比较这两个数据是不是相等。
	 */
	//1.
	Scanner scanner = new Scanner(System.in);
	System.out.println("输入两个数字:");
	double num1 = scanner.nextDouble();
	double num2 = scanner.nextDouble();
	double num;
	num = num1 * num2;
	System.out.println("结果为:" + num);
	//2.
	System.out.println("输入三个数字:");
	int A = scanner.nextInt();
	int B = scanner.nextInt();
	int C = scanner.nextInt();
	int max1 = A > B ? A: B;
	int Max = max1 > C ? max: C;
	System.out.println(Max);
	//2.1方法二
	int max2 = A > B ? (A > C ? A : C ) : (B > C ? B : C);//先算小括号的
	int max3 = A > (B > C ? B : C) ? A : (B > C ? B : C); 
	System.out.println(max2);
	//2.2第三种方法
	
	//3.
	System.out.println("输入两个数字:");
	int q = scanner.nextInt();
	int w = scanner.nextInt();
	if(q == w){
		System.out.println("true");
	}
	else{
		System.out.println("flase");
	}
	//3.2第二种方法
	/*		Scanner sc = new Scanner(System.in);
	System.out.println("输入两个数字:");
	int i = scanner.nextInt();
	int o = scanner.nextInt();
	System.out.println(i==o);
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值