Java基础(1) - 语法 & 概念
Java基础语法
基础
1. Java对大小写敏感
2. Java注释
//单行注释 这是一行注释
/*
这里是多行
注释
*/
/**
这里是文档注释
@author 0o晓月メ
*/
3. 访问修饰符
- public 都能访问,公共的
- protected 包里面的成员,本身,子类 能够访问
- private 只有类本身可以访问
- default 类本身 以及同一包里面的成员能够访问
4.类的定义
public class People {
//类静态属性
public static String type = "chinese";
//常量定义
public final int CONSTANT = 1;
//构造器
public People(String name, int age){
this.setName(name);;
this.setAge(age);
}
//定义属性
private String name;
private int age;
//定义方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
5.运算符
- 自增减
- 关系运算符
- 强制类型转换
demo
/**
* 运算符号
* @author 0o晓月メ
*/
public class OperationalSymbol {
//程序入口
@SuppressWarnings("unused")
public static void main(String[] args) {
/**
* 自增减:实现自身的 加/减 并且赋值给自身 a++<=> a=a+1
* ++a/--a:
* 先做其他运算再执行a的自增/减
* a++/a--:
* 先做a的自增再执行其他运算/减
*/
int a = 1;
int b = 1;
System.out.println(a++);//->1
System.out.println(a); //->2
System.out.println(++b);//->2
System.out.println(b); //->2
/**
* 关系运算符
* >,>=, <,<=,==,
* 与:&&, 或:||, 非:!=
* 3元表达式
* a>b?true时返回这个值:false返回这个值
*/
System.out.println(1>2);//=>false
System.out.println(1<2);//=>true
System.out.println(3>1&&3<4);//=>true
System.out.println(2>4?"对":"错");//=>错
/**
* 强制类型转换
*/
double dub = 1.232323;
//强制转为int 这里有精度丢失
int numb = (int)dub;
}
}
6.控制流程
- 条件语句
- 循环语句
- 多重选择语句
- 中断语句
demo
package knowledge.base;
/**
* 控制流程语句
* @author 0o晓月メ
*
*/
public class Sentence {
public static void main(String[] args) {
int i = 10;
/**
* 条件语句
*/
if(i>10){
System.out.println("符合条件");
}else{
System.out.println("不符合条件");
}
/**
* 循环语句
*/
//先判断是否符合再执行
while(i > 0){
System.out.println(i--);
}
//先执行在判断是否符合条件
do{
System.out.println(i++);
}while(i<10);
for(int j = 0;j<5;j++){
System.out.println(j);
}
/**
* 多重选择语句
* 若不添加 break 会一直往下执行其他的case
*/
i = 5;
switch(i){
case 1:
System.out.println("值为1");
break;
case 5:
System.out.println("值为5");
break;
case 7:
System.out.println("值为7");
break;
default:
System.out.println("没有符合的");
break;
}
/**
* 中断语句
* break 跳出循环体
* continue 跳出本次循环
*/
for(int t = 0;t<5;t++){
if(t==2) continue;
if(t==4) break;
System.out.println(t);
}
}
}
知识补充
static
类静态属性/方法 不需要创建实例,static 修饰的方法不能访问实例属性 ,可以直接使用类名来调用static 修饰的属性/方法,由于static是在编译时并被创建,所以不能被覆盖(即不适于多态)
private
只有自身能够访问,子类也不能访问,故不能覆盖,如果子类中包含一样的 属性/方法 则视为新添加的 属性/方法
接口
一个类可以实现多个接口,接口只能声明抽象方法和常量,接口不能被实例化,常用于多态
public interface MyInterface {
public final String ="test";
public void getSomething();
}
抽象类
抽象类可以有抽象的方法,也可以有实现了的方法,可以有各种访问权限的属性
public abstract Chicken{
}
值传递
java方法的参数是值传递,是参数的一个副本,对参数进行修改不会影响到原来的值,对象参数除外,因为对象参数拷贝的值是对象的一个引用,所以改变对象参数会影响到原来的参数值。
Java虚拟机
Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。
JRE
Java运行时环境(JRE)是将要执行Java程序的Java虚拟机。它同时也包含了执行applet需要的浏览器插件。
JDK
Java开发工具包(JDK)是完整的Java软件开发包,包含了JRE,编译器和其他的工具(比如:JavaDoc,Java调试器),可以让开发者开发、编译、执行Java应用程序。
Java基础(1) - 语法 & 概念的更多相关文章
- 二、JAVA基础、语法
第二节:JAVA基础.语法 1.修饰符.变量: Java中主要有如下几种类型的变量 局部变量 ...
- JAVA 基础基本语法---常量与变量
JAVA 基础基本语法---常量与变量 语法:计算机能够识别的语言的规则: 0. 基本语法 编写Java程序时,应注意以下几点: 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hel ...
- java基础入门-语法(1)
因为平时用到一些java的项目,比如ElasticSearch,zookeeper等,有时也想看看里面怎么实现的,或者看到别人分析原理时候会用到java源码, 自己也想跟着学一下,最起码能看懂别人的分 ...
- Java基础try-with-resource语法源码分析
众所周知,所有被打开的系统资源,比如流.文件或者Socket连接等,都需要被开发者手动关闭,否则随着程序的不断运行,资源泄露将会累积成重大的生产事故. 在Java的江湖中,存在着一种名为finally ...
- java基础(一) -语法
基本语法 编写Java程序时,应注意以下几点: 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的. 类名:对于所有的类来说,类名的首字母应该大写.如果类名由若干单词组 ...
- java基础知识-基本概念
1.1 java语言有哪些优点? 1.java语言为纯面向对象的语言. 2.平台无关性.java语言的优点便是“一次编译,到处执行”.编译后的程序不会被平台所约束,因此java语言有很好的移植性. 3 ...
- 八、Java基础---------基本语法
一.学习Java注意的细节: 1.1 Java语言拼写上严格区分大小写: 1.2 一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类: 1.3 若源文件中 ...
- 黑马程序员——JAVA基础之语法、命名规则
------- android培训.java培训.期待与您交流! ---------- 1.java语言组成:关键字,标识符,注释,常量和变量,运算符,语句,函数,数组. 2.java关键字:被Jav ...
- java基础-01基本概念
java的特点 跨平台 所谓的平台,我们可以理解为操作系统. 大部分语言是不能跨平台的,比如c语言的程序在windows和linux上需要编写不同的代码. java程序是运行在JVM(Java Vir ...
随机推荐
- 单片机IAP学习
1.IAP是什么--简介 IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可 ...
- 数据结构与算法系列研究五——树、二叉树、三叉树、平衡排序二叉树AVL
树.二叉树.三叉树.平衡排序二叉树AVL 一.树的定义 树是计算机算法最重要的非线性结构.树中每个数据元素至多有一个直接前驱,但可以有多个直接后继.树是一种以分支关系定义的层次结构. a.树是n ...
- 《安卓网络编程》之第四篇 处理URL地址
在Android手机系统中,可以通过URL地址获取网络资源.在URL类的众多方法中,可以使用openStream()方法来读取该URL资源的输入流InputStream.在此方法的基础上可以引申出很多 ...
- Apache许可翻译
https://www.apache.org/licenses/LICENSE-2.0 Apache许可 2.0 2004.1 使用.复制和发行的术语和条件. 1 定义 "License&q ...
- python 字符串常用方法
字符串常用方法 capitalize() String.capitalize() 将字符串首字母变为大写 name = 'xiaoming' new_name = name.capitalize() ...
- offsetHeight/Width clientHeight/Width scrollHeight/Width等高宽算法
图解: jquery里的对应取法: clientHeight/Width:innerHeight/Width(), offsetHeight/Width: outerHeight/Width(). w ...
- docker - win7下构建swarm nodes实现跨host的容器之间的通信
前言 之前在Linux环境下尝试了swarm,通过将不同host以swarm nodes 的方式连接到一起(构建Overlay 子网),从而实现跨host的container通信. 今天我们就来说说如 ...
- Android Studio的两种模式及签名配置
我们使用Android Studio 运行我们的app,无非两种模式:debug和release模式. debug模式 debug模式使用一个默认的debug.keystore进行签名. 这个默认签名 ...
- 微信小程序开发 -- 02
微信小程序开发 --02 微信小程序在开发中,难度系数不是很大,其中应用的技术也是web开发中常用的技术,虽然在微信开发者工具中的叫法与常见的web开发的叫法不太一样. 首先,在微信小程序开发中,代码 ...
- 深入研究React setState的工作机制
前言 上个月发表了一篇 React源码学习--ReactClass,但是后来我发现,大家对这种大量贴代码分析源码的形式并不感冒.讲道理,我自己看着也烦,还不如自己直接去翻源码来得痛快.吸取了上一次的教 ...