java的基础知识
编写一个hello,world
public class Hello{
public static void main(String[] arge){
System.out.print("hello,world");
}
}
public class(这个表示一个类,修饰符的意思)Hello是类的名字
pubic static void (这些是修饰符,关键字)main(主方法)(String[] arge )这是一个参数(快捷键是psvm)
System.out.print(这是输出语句)(快捷键是sout)
Java程序运行机制
编译型
解释型
java的基础语法
注释
注释是不会执行的,注释是给我们写代码的的人看的
写注释是一个好的习惯
Java中的注释有三种:
单行注释://
多行注释:/**/
*文档注释(javaDoc):/ ** */
标识符与关键字
关键字
关键字是Java中已经被赋予特定含义的一些单词,不可以拿关键字拿来当标识符用
标识符
Java中的所有的组成部分都需要名字,类名以及方法名都被称为标识符,在Java中不能拿关键字来做标识符
所以的标识符都应该以字母(A-Z或者a-z),美元符($),下划线(-)或者数字的任何字符组合,但是标识符的第一位不能为数字
标识符的大小写表示的意思是不一样的
标识符可以用中文命名,但是一般不建议这样使用,也不建议用拼音,很Lwo
数据类型
强类型语言:要求变量的使用要严格规定,所有的变量都必须先定义后使用
弱类型语言:他的变量使用可以不用严格规定
强类型语言的安全性比弱类型高,相应的他比弱类型的速度慢
Java的数据类型
基本类型(primitive type):
字符用char,字符串用String(字符串这个不是关键字是一个类)
定义布尔值的时候要用boolean来定义,定义布尔类型只能定义两个值:true与false
引用类型(reference type):
字节
位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数
*字节(byte):是计算机中数据处理的基本单位,习惯上用大写的B来表示
1B(byte,字节)= 8bit(位)
字符:是指计算机中使用的字母,数字,字和符号
1bit表示一位
1Byte表示一个字节1B=8b
1024B=1kB
1024KB=1M
1024M=1G
整数扩展
进制
二进制前面加0b
八进制前面加0
十进制不变
十六进制前面加0x
小数扩展
因为浮点数有误差,他的数字都是大约比较的,接近但不等于,所以最好完全使用浮点数进行比较
要使用这个:BigDecimal 数学工具类
字符扩展
所以的字符的本质还是数字
因为我们用到的字符来自 unicode 表他们每个字符对应一个编码,如编码97=a,占两个字节,他可以写65536个所以我们的字符可以变成数字
转义字符
类型转换
Java类型的优先级
低-------------------------------------------------------------->高
byte,short , char , -> int--> long -> float -> double
自动类型转换,是按照系统的类型优先级来转换的,只能由小转大
强制类型转换,是由高到低,在想转换的值前面加上自己想转的类型;如:int i=100;byte b= (byte) i;
注意点
不能对布尔值进行转换
不能把对象类型转换为不相干的类型
在把高容量转换到低容量的时候要用强制类型转换
转换的时候可能存在内存溢出,或者精度问题
操作比较大的数的时候,注意溢出问题
在JDK7有一个新特性,数字之间可以用下划线分割,如:10-0000-0000;中的下划线不会被输出
变量
可以变的量就是变量
Java是一种强类型语言,每个变量都必须声明其类型
Java变量是程序中最基本的储存单元,其要素包括变量名,变量类型和作用域
每个变量都有类型,类型可以是基本类型,也可以是引用类型
变量名必须是一个合法的标识符
变量声明是一条完整的语句,因此每一个声明都必须以分号结尾
java的基础知识的更多相关文章
- Java 多线程——基础知识
java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...
- java必备基础知识(一)
学习的一点建议: 每一门语言的学习都要从基础知识开始,学习是一个过程,"万丈高楼平地起",没有一个好的地基,想必再豪华的高楼大厦终究有一天会倒塌.因此,我们学习知识也要打牢根基,厚 ...
- 什么才是java的基础知识?
近日里,很多人邀请我回答各种j2ee开发的初级问题,我无一都强调java初学者要先扎实自己的基础知识,那什么才是java的基础知识?又怎么样才算掌握了java的基础知识呢?这个问题还真值得仔细思考. ...
- java部分基础知识整理----百度脑图版
近期发现,通过百度脑图可以很好的归纳总结和整理知识点,本着学习和复习的目的,梳理了一下java部分的知识点,不定期更新,若有不恰之处,请指正,谢谢! 脑图链接如下:java部分基础知识整理----百度 ...
- JAVA相关基础知识
JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...
- JAVA多线程基础知识(一)
一. 基础知识 要了解多线程首先要知道一些必要的概念,如进程,线程等等.开发多线程的程序有利于充分的利用系统资源(CPU资源),使你的程序执行的更快,响应更及时. 1. 进程,一般是指程序或者任务的执 ...
- Java SE 基础知识(一)
一.基础知识 1. Java SE : Java Standard Edition Java ME : Java Micro Edition Java EE : Java Enterprise Edi ...
- JAVA学习基础知识总结(原创)
(未经博主允许,禁止转载!) 一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平 ...
- java正则表达式基础知识(转)
1基础 2.1 简单字符类 构造 描述 [abc] a,b或c [^abc] 除a,b或c外的字符 [a-zA-Z] a至z 或 A至Z [a-d[m-p]] a至d 或 m至p [a-z&& ...
- java线程基础知识----线程与锁
我们上一章已经谈到java线程的基础知识,我们学习了Thread的基础知识,今天我们开始学习java线程和锁. 1. 首先我们应该了解一下Object类的一些性质以其方法,首先我们知道Object类的 ...
随机推荐
- 通过HBase Observer同步数据到ElasticSearch
Observer希望解决的问题 HBase是一个分布式的存储体系,数据按照RowKey分成不同的Region,再分配给RegionServer管理.但是RegionServer只承担了存储的功能,如果 ...
- 牛客挑战赛33 C 艾伦的立体机动装置(几何)
思路: 我们需要枚举展开多少条边 然后把上底面的点放到和下底面一个平面 然后算两点之间的距离 注意判断直线与线段是否有交点 #include <bits/stdc++.h> using n ...
- Codeforces Round #Pi (Div. 2) D. One-Dimensional Battle Ships
Alice and Bob love playing one-dimensional battle ships. They play on the field in the form of a lin ...
- C# 异常重试策略
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- mysql-画图
目录 阿里数据库产品rds 淘宝数据库架构 数据库下载 Mysql3种安装方法 mysql_install_db安装数据库命令脚本中有生成初始mysql数据 也可以把mysql_install_db集 ...
- k8s-1-交付dubbo微服务
一.Dubbo微服务概述 1.1: dubbo介绍 1.2: 部署内容 二.实验环境架构 2.1: 架构 1.1 架构图解 1.最上面一排为K8S集群外服务 1.1 代码仓库使用基于git的gitee ...
- 【转】Docker 核心技术与实现原理
转自:https://draveness.me/docker 提到虚拟化技术,我们首先想到的一定是 Docker,经过四年的快速发展 Docker 已经成为了很多公司的标配,也不再是一个只能在开发阶段 ...
- LVS-DR 模式
SNAT(Source Network Address Translation)源地址转换,类似家里路由器设置,内网地址向外访问时,发起访问的内网ip地址转换为指定的 IP 地址 DNAT(Desti ...
- meidi
最近觉得某些公司的选择题也是很基础,非常值得总结回味.今天做了美的的笔试,20道选择题(单选14+6多选).特此记录如下(部分忘了烦请见谅): 1. 是我昨晚刚刚总结的List,Set,Map的区别: ...
- JavaScript事件:事件处理模型(冒泡、捕获)、取消冒泡、阻止默认事件
(一)事件处理模型---事件冒泡.捕获 (1)事件冒泡 24 <body> 25 <div class="warpper"> 26 <div clas ...