第二节:Java入门第一行代码
前言
大家好,今天带来Java入门第一行代码的概述,希望你们喜欢
第一行代码
学习Java基础课程,学会使用eclipse,eclipse为Java集成开发坏境IDE,创建第一个Java源文件代码:
public class HelloWorld{
public static void main(String[] args){
System.out.println("hello world");
}
}
要点:
- HelloWorld为类的名字
- public static void main(String[] args) 为主方法
- System.out.println("hello world")为打印输出,并在控制台显示 hello world
- public 为访问修饰符,表示公开的访问类
Java为面向对象的语法
- 什么是面向对象?
答:在Java中一切皆对象;可以理解为现实世界中的人,物,都可以看做为对象。
在一个Java的类中,该类可以为对象,那么类就是一个对象,一个对象就如人,它有方法和属性,即为动作和状态的特征。
//建立一个人的类
public class Person{
String name; //人具有姓名的属性
String age; //人具有年龄的属性
public void eat(){
System.out.println("人具有吃的方法");
}
}
变量的定义
什么是变量,即为可以变化的量,示例
int age = 12;
- 其中 int 为变量的数据类型,表示整数
- age 为变量
- “=” 为赋值操作符,把右边的值赋值给左边的变量
public class Person{
int age = 12;
public static void main(String[] args){
System.out.println(age);
}
}
介绍八种基本变量的类型
八种基本数据类型
- 整型 4种:byte(8位),short(16位),int(32位),long(64位)
- 字符型 1种:char(16位)
- 浮点型 2种:float(32位),double(64位)
- 布尔型 1种:boolean(1位)(true,false)
String类型(独立来讲,不是基本数据类型,为final修饰的)
String类型一旦被创建,就不能够被更改。字符串类型的表达效果,示例:String name = "Vic"
强制类型转换和自动类型转换
- 数据类型的转换
数据类型的理解:规则口诀
小到大自动,大到小强制,表示小杯子里的水可以倒入大杯子里,而大杯子里的水倒入小杯子里,会出现溢出。
/ 转换的数据类型比较 /
byte->short(char)->int->long->float->double
Java中的命名规范
如果有人问Java中的命名规范,你可以简单的说:英,数,$,_ ,(第一位不能为数字),不能为关键字。
成员变量和局部变量
声明在方法体外的变量为成员变量,声明在方法体内的变量为局部变量。
Final修饰符
上述表达final修饰的,为不可变得值,final可以修饰变量,修饰类,修饰方法。
- 被修饰的变量,只能被赋值一次
- 被修饰的类,不能被继承
- 被修饰的方法,不可被重写
Static关键字的理解
答:“ static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。” ---《Java编程思想》
static代码块,只会在类加载的时候执行一次。static变量不需要创建对象就可以引用。
静态成员变量可以通过对象访问,只要访问权限足够就可以。
静态代码块,随着类的加载而执行,只执行一次。
class StaticDemo{
static{
System.out.println("静态代码块");
}
void show(){
System.out.println("方法");
}
}
public class Test{
public static void main(String[] args){
new StaticDemo().show();
new StaticDemo().show();
}
}
//result
静态代码块
方法
方法
public class Test{
static{
System.out.println("静态");
}
public static void main(String[] args){
System.out.println("静态main");
}
}
//result 静态代码块优先于main函数执行
静态
静态main
class StaticDemo{
static{
System.out.println("parent静态代码块");
}
{
System.out.println("parent非静态代码块");
}
StaticDemo(){
System.out.println("parent构造方法");
}
public class Test extends StaticDemo{
static{
System.out.println("child静态");
}
{
System.out.println("child非静态");
}
Test(){
System.out.println("child构造方法");
}
public static void main(String[] args){
System.out.println("main");
new Test();
}
}
//result
parent静态代码块
child静态
main
parent非静态代码块
parent构造方法
child非静态
child构造方法
总结
- 本文讲了Java入门第一行代码,如果您还有更好地理解,欢迎沟通
- 定位:分享
Android&Java知识点,有兴趣可以继续关注
第二节:Java入门第一行代码的更多相关文章
- java入门第五步之数据库项目实战【转】
在真正进入代码编写前些进行一些工具的准备: 1.保证有一个可用的数据库,这里我用sql server 2000为例,2.拥有一个ide,如ecelise或myeclipse等,这里我使用的是myecl ...
- 转:java怎么用一行代码初始化ArrayList
java怎么用一行代码初始化ArrayList 您可以创建一个工厂方法: public static ArrayList<String> createArrayList(String .. ...
- Java如何用一行代码初始化ArrayList
参考链接: 1.Initialization of an ArrayList in one line 2.java怎么用一行代码初始化ArrayList
- java入门第三步之数据库连接
数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...
- java入门第三步之数据库连接【转】
数据库连接可以说是学习web最基础的部分,也是非常重要的一部分,今天我们就来介绍下数据库的连接为下面学习真正的web打下基础 java中连接数据库一般有两种方式: 1.ODBC——Open Datab ...
- Java入门第37课——猜字母游戏之设计数据结构
问题 有猜字母游戏,其游戏规则为:程序随机产生5个按照一定顺序排列的字符作为猜测的结果,由玩家来猜测此字符串.玩家可以猜测多次,每猜测一次,则由系统提示结果.如果猜测的完全正确,则游戏结 ...
- Netty学习第二节Java IO通信
一.Java IO通信 名词解释: BIO通信: 采用BIO通信模型的服务端,通常由一个独立的Acceptor线程负责监听客户端连接,在接收到客户端请求后,为每一个客户端建立一个新的线程负 ...
- 第二节 java基本语法
在讲解之前首先避免不了的就是对一些枯燥的东西的描述,哈哈哈,学习就是这样的咯 1.注释:什么叫注释呢?就是帮助阅读的同学理解代码的说明,而开发工具不会去理会他.java的注释有哪些呢?主要分为3大类: ...
- Java入门第38课——猜字母游戏之设计程序结构
问题 本案例需要实现猜字母游戏程序中的程序结构 方案 分析猜字母游戏可以看出,程序首先需要随机产生5个不同的字母作为需要猜测的结果,因此,可以先定义一个方法,以实现此功能: ...
随机推荐
- Linux驱动之LCD驱动编写
在Linux驱动之内核自带的S3C2440的LCD驱动分析这篇博客中已经分析了编写LCD驱动的步骤,接下来就按照这个步骤来字尝试字节编写LCD驱动.用的LCD屏幕为tft屏,每个像素点为16bit.对 ...
- Tigase-01 使用spark或spi登录Tigase服务器
喜欢研究IM技术的同学们,欢迎加入群 310790965 一起来学习,有什么问题可以一起讨论. 本源码是基于tigase v7.1.0来分析的,群里文件中会上传一个完整能跑的源代码压缩包,网上tiga ...
- The Swap
源程序 swap.cpp* 输入文件 swap.in 输出文件 swap.out 时间限制 1s 空间限制 256MB [问题描述] Alice 得到了一个整数, 她将其视作长度为 n 的字符串 S. ...
- spark2.0源码学习
[Spark2.0源码学习]-1.概述 [Spark2.0源码学习]-2.一切从脚本说起 [Spark2.0源码学习]-3.Endpoint模型介绍 [Spark2.0源码学习]-4.Master启动 ...
- Read-only file system
mount -o remount rw /
- js几种数组遍历方法.
第一种:普通的for循环 ; i < arr.length; i++) { } 这是最简单的一种遍历方法,也是使用的最多的一种,但是还能优化. 第二种:优化版for循环 ,len=arr.len ...
- 行盒(line box)垂直方向的属性详解:从font-size、line-height到vertical-align
视觉格式化模型 在一个文档中,每个元素都被表示为0.1或多个矩形的盒子.确定这些盒子的尺寸, 属性 --- 像它的颜色,背景,边框方面 --- 和位置是渲染引擎的目标.① 在CSS中,使用标准盒模型描 ...
- AJAX随笔2
Ajax作用: 是用JavaScript向服务器发送异步请求,然后服务器给出响应,然后以XML格式的文件返回给浏览器端! 异步: 当浏览器向服务器发送请求的时候,不是整个页面刷新,而是局部刷新[局部信 ...
- nodejs之使用express框架连接mongodb数据库
var express = require('express');var router = express.Router();var app = express();var MongoClient = ...
- tensorflow学习之(八)使用dropout解决overfitting(过拟合)问题
#使用dropout解决overfitting(过拟合)问题 #如果有dropout,在feed_dict的参数中一定要加入dropout的值 import tensorflow as tf from ...