java初见
public class Diyi{
public static void main(String[] args){
System.out.println("Hello,world");
}
}
运行结果 Hello,world
当我运行出结果时感觉非常厉害
今天主要学习内容有
1、Java相关知识
发展史:
1991:詹姆斯高斯林 为了改造C++ OAK 橡树语言
C++缺点:面向对象是多继承的
1995:商业发布 jdk1发布
Java语言的特点:
1、比C C++使用更灵活 更简单
2、高级语言:支持面向对象
3、更安全 不会内存泄漏 垃圾回收机制GC
4、支持多线程
5、跨平台(操作系统:windows mac linux android ios等)
Java是第一语言
如果使用Java开发程序,电脑必须安装Java环境
JDK:JAVA DEVELOPED KIT java加法工具
可以到官网下载:www.oracle.com
sun 现为oracle 甲骨文
1、ERP软件
2、oracle数据库 第一数据库
3、Java语言
jdk的内容:掌握
1、包含Java程序常用的工具
javac.exe java.exe
2、包含了Java提供的工具资源
例如:Scanner Random
3、JVM java 虚拟机 执行Java程序的场所
JVM脱离操作系统:任何操作系统都是可以运行JVM的
一处编写,处处调用
配置环境变量:
目的:让jkd能够找到并工作于存放在电脑任何位置的Java程序
1、新建 系统环境变量
名:JAVA_HOME
值:C:\Program Files\Java\jdk1.8.0_51
2、编辑系统环境变量
Path 路径
添加: ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
计算机的运行原理:
CPU 处理需要的数据从 内存 中获取
内存中的数据获取方式:
1、直接放到内存中:变量
2、从硬盘读取:流
计算机是二进制的:两种状态 1 0
人识别的进制:
十进制
int age=20;
进制转换:把人识别的进制如何转换为计算机识别的二进制
十进制 转换为 二进制
20 10100
转换原则:除2取余,直到除尽,余数倒数排序
在计算机中,使用开关来标识 开用1标识 关用0标识
10100 使用5个开关
小练习:35 100011
System.out.println(age);
二进制 转换为 十进制
10100 20
转换方法
取各个位上的数乘以2的几次方,和累加在一起
二进制需要开关来表示
计算机有规定
每一个开关在计算机中叫做 一位
32位操作系统:表示一个十进制数使用32个开关
64位操作系统:
常识:每一个符号,包括汉字、字母等都使用一个数字来表示
ASCII码
在Java中,规定8个开关为一组
8个开关 为 1byte 也叫做1字节
1024byte 1kb
1024kb 1mb
1024mb 1gb
1024gb 1tb
1024tb 1pb
Java中有8种基本数据类型:
整数:没有小数点
int 4字节 int age=1;
使用32个开关来表示1
float 4字节 单精度的浮点型 32个开关
float pi=3.14f;
double 8字节 双精度的浮点型 64个开关
double pi2=3.14;
了解:字节的原理
案例:数据类型的使用
8种基本数据类型
6种数值类型 常用的是int float
byte 整数 1字节 -2的7次方 2的7次方-1 -128 127
short 短整形 2字节 -2的15次方 2的15次方-1
int 整形 4字节 -2的31次方 2的31次方-1
long 长整形 8字节 -2的63次方 2的63次方-1
float 单精度 4字节
double双精度 8字节
char 字符型 2字节 单引号引起的单个字符
boolean 布尔型 1字节 八分之一字节
浮点型中的float double 存放的是近似值
货币 需要精确的往往不适用 Decimal
类型之间的转换,分两种:
1)自动类型转换(隐式类型转换):同类型,例如都是数值类型
条件:同类型 且 小字节类型存入大字节类型
见代码:Demo2.java
double pi=3.14f;
【注意】:1、小数不能自动转换为整数
float num1=1;
long num2=num1;
2、整数可以赋值给比自己大或高的小数类型
int num3=1;
float num4=num3;
int num5=2;
double num6=num5;
2)强制类型转化(显示类型转换)
会使数据失去精度
语法:
float num1=3.14f;
int num2=(int)num1;
数值数据类型:
1)浮点型高于整型
2)字节数大的高于字节数小的
案例:
long num2=3.14f;
特殊情况:
字符型数据可以当做整型int来使用
char c='a';
System.out.println("c="+c);
int num=c;
System.out.println("num="+num); 输出97
反之:整形数据不能直接 用于char类型,需要强制转换
int num2=98;
//可以把num2转换为char类型
char c2=(char)num2;
System.out.println("c2="+c2);
小总结:
1、变量的值要和变量的类型要统一
char sex='M';
2、在程序运行过程中可能会出现类型转换
自动类型转换:同一类型 且 字节数小的 存放到 字节数大的
强制类型转换: (目标类型)
【说明】
1、char类型可以当做int使用---- 自动类型转换
如果int类型当做char使用----需要强制类型转换
见Demo5.java
2、浮点数不能给整型复制
不可以:long num=3.14f;
3、字节数大的不能赋值给字节数小的
不可以:long num1=1;
int num2=num1;
练习:
1、 double num1=3.14;
long num2=num1;
不能:浮点型高于整型
2、 float pi=3.14;
不能:3.14默认是double 8字节不能存入到4字节中
3、 float num3=3.14f;
long num4=num3;
不能:浮点型高于整型,浮点型不能直接赋值给整型
4、 long num5=12;
float num6=(float)num5;
能:12.0
5、 double num7=3.14;
float num8=(float)num7;
能:3.14
6、 char c='c';
int num9=c; 能
char c2=num9; 不可以,需要强制类型转换 char c2=(char)num9;
如果需要输出c2的值是 d char c2=(char)(num9+1);
float 小数位数是6-7位
double 小数位数是14-15位
java程序框架
public class 类名{
public static void main(String[] args){
}
}
类名如果是public 修饰,那么必须和文件名一致
在Java中使用{}括起来的代码称为 代码块
在Java程序中main称为方法:入口方法,从main里的第一行代码开始执行
在main的()中 String[] 参数类型:字符串数组
args 参数名:变量名
在写代码过程中,一定要对代码进行解释、说明
在Java中共有三种注释
1、单行注释 //开头之后的当前行的内容
2、多行注释 /*开头 */结尾 用来简化单行注释
3、文档注释 /**开头 */结尾
作用:把文档注释生成说明性文件,只提取文档注释
当前类的作者:
时间:
类里代码功能的总体说明
修改者:
修改时间:
修改内容:
变量的作用域:
变量声明在哪个代码块内部,就只能在这个代码块内部使用
java初见的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- Java代理机制之初见(理解及实现)
都知道Java中的Spring,有一重要思想:AOP,实现原理也就是Java的动态代理机制.初见代理这个名词时,觉得生活中常有代理的这一说法. 那么,在Java中,代理又是什么呢?它又是如何实现的?实 ...
- java之初见
1.Java语言的了解: Java语言最早是由SUN公司创造出来的,1991年,SUN公司的green项目,Oak,随后SUN公司和后来的甲骨文公司又先后发布了java1.0,1.1,1.2,1.3, ...
- 就这么漂来漂去---一个毕业三个月的java程序员的裸辞风波
注:这并不是一篇技术文章,而是记录了我这几个月经历的入职,裸辞,找工作的心路历程,简单介绍一个博主的情况,我是16年毕业生,校招进了一家北京的公司,java开发,和很多年轻人一样,干了一段时间,我发现 ...
- java.lang.IllegalArgumentException: Result Maps collection does not contain value for java.lang.Integer
今天做springmvc+mybatis+spring的项目的时候发现了一个异常.如下: org.apache.ibatis.builder.IncompleteElementException: C ...
- java面向对象之 类和对象
OOP:Object Oriented Programming(面向对象编程) 面向对象: 1:将复杂的事情简单化. 2:面向对象将以前的过程中的执行者,变成了指挥者. 3:面向对象这种思想是符合现在 ...
- Java之File类
一.初见File类 java.io.File类代表系统中的文件(文件或目录) 常用构造方法 File(String pathname) File(String parent, String child ...
- 6年后的第一篇博客:进入java的精彩世界
10的.NET从业经验,也算资深人士了. 2018开始,正式进入JAVA的世界. 为什么说正式?因为已经附带有几年ANDROID经验了,确切的说,是正式进入JAVA服务器端. 没有任何人要求,纯粹是个 ...
- Java中怎么简单的使用正则表达式?
对于正则表达式,我通常的认识就是通过一些陌生的奇怪的符号就可以完成很复杂事件的好帮手!实际上正则表达式确实是这方面的好助手,接下来让我们一起认识一下Java中怎么使用正则表达式吧. 初见Pattern ...
随机推荐
- 记录vue项目上线遇到的一些问题
1. 静态资源路径不对,在开发模式下正常,打包到服务器上的时候,发现静态资源全部请求不到 原因:开发模式下,本地静态服务器直接从项目目录直接起的,跟static是同目录,写绝对路径没问题,直接loca ...
- Windows激活最高权限
两种方法激活最高权限 方法1 用鼠标右键点击要操作的文件或文件夹,依次进入"属性→安全→高级→所有者→编辑",在"将所有者更改为"栏中选择登录系统的管理员用户, ...
- 安装jar包到maven仓库
1)将所要安装的jar包放在自定义目录下. 2)(maven环境变量配置无误的情况下)windows环境下,打开命令提示符,输入如下命令: mvn install:install-file -Dfil ...
- spring boot 入门之 helloworld
第一步:创建一个普通的maven项目 第二步:配置springboot基础依赖配置(即配置pom和启动类) POM配置 <project xmlns="http://maven.apa ...
- pygame学习之绘制移动的矩形
import pygame from pygame.locals import * pygame.init() screen = pygame.display.set_mode((600, 500)) ...
- vue小技巧之偷懒的文件路径——减少不必要的代码
众所周知,我们写vue项目的时候都会创建很多个文件,尤其是一些中大型项目,会有很深的文件夹,当你去引入的时候,要写很长的路径比如我要引入一个css文件, 必须得 import '../../../s ...
- Spark环境搭建(六)-----------sprk源码编译
想要搭建自己的Hadoop和spark集群,尤其是在生产环境中,下载官网提供的安装包远远不够的,必须要自己源码编译spark才行. 环境准备: 1,Maven环境搭建,版本Apache Maven 3 ...
- Python爬虫爬取豆瓣读书
一,准备工作. 工具:win10+Python3.6 爬取目标:爬取图中红色方框的内容. 原则:能在源码中看到的信息都能爬取出来. 信息表现方式:CSV转Excel. 二,具体步骤. 先给出具体代码吧 ...
- Ubuntu 插入鼠标自动禁用触控板
http://ubuntuhandbook.org/index.php/2016/11/install-touchpad-indicator-in-ubuntu-16-04/ arrive@HP443 ...
- JS for循环 if判断、white循环。小练习二
假设一个简单的ATM机的取款过程是这样的:首先提示用户输入密码(password),最多只能输入三次,超过3次则提示用户“密码错误,请取卡”结束交易.如果用户密码正确,再提示用户输入取款金额(amou ...