我的java学习之旅--一些基础
(因为我粗略学过C,C++,Python,了解过他们的一些语法,所以为了使得java的入门更为顺畅,便会忽略一些和C语法相类似的地方,着重点明一些java自己的特色之处。也减轻一下自己写文字的负担。)
JAVA是一门静态的强类型的面向对象的重量级的编程语言。
一般写JAVA程序需要的组件是JDK,到甲骨文的网站上下载即可。
初级阶段使用文本编辑器即可,当然,我正处在这个阶段。
此时用来编译运行JAVA文件常用的两条命令是
javac -encoding utf-8 filename.java
java filename
以上命令就是先使用javac在java文件当前目录下,编译生成字节码文件filename.class,之后再用java解释执行成特定平台的机器码,输出。
这里指定了编码格式,因为java默认文件为unicode编码,但是文件中有中文,会有错误提示。
错误:编码GBK的不可映射字符
若是你没有这个问题,则可以忽略那个-encoding utf-8
java源文件的命名
和c,c++,python不同,java要求,源文件后缀名为.java,文件名字一般要求和文件中的 public class 同名,若是没有定义,那就没有限制了。这也可以看出,一个java源文件中只能最多有一个 public class。通常建议一个java源文件只定义一个类,让java的源文件主文件名与该源文件中定义的 public class同名。
java程序的结构
java程序必须以类的形式存在,类是java程序的最小单位,java不允许除类外的可执行语句,方法等成分独立存在。他们必须放在类定义里。
例子:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello World");
}
}
观察上例,与文件同名的 public class HelloWorld,内部包含一个main()方法,使用System.out.println("Hello World");实现对于文本的输出,类似的有个System.out.print("Hello World");,差别就在于前者会换行。
目前用到的main()函数都是这样写的,关于详细内容之后的文章会介绍。
若是存在多个类怎么办?
可见下例:
class Dog{
public void jump(){
System.out.println("正在执行jump方法");
}
public void run(){
this.jump();
System.out.println("正在执行run方法");
}
}
public class DogTest{
public static void main(String[] args){
Dog dog = new Dog();
dog.run();
}
}
因为只允许有一个public class,故而其他的就是普通的类的形式。
java中的流程控制语句
if (...){
...
}
else if{
...
}
else{
...
}
switch (...){
case ...:{
...
break;
}
...
default:{
...
}
}
while (...){
...
}
do{
...
}while (...);
for (...; ...; ...){
...
}
Java中出现了一种迭代式的for的用法。python和C++都有类似的语法结构。
for ( type variableName : array | collection){
// variableName 自动迭代访问每个元素
}
例如:
public class ForEachTest
{
public static void main(String[] args)
{
String[] books = {"轻量级",
"fengkuang",
"jiangyi"};
// 使用foreach迭代遍历。
for(String book : books)
{
System.out.println(book);
}
}
}
我的java学习之旅--一些基础的更多相关文章
- Java学习之旅开篇:运行机制及环境搭建
在写这篇博客之前,我想对自己进行简单概括:我从事软件开发工作已经三年多了,并且一直在从事.NET相关项目的开发.为什么突然间想学习Java呢?有以下几个原因: 1. 开发程序三年多来,已经对.NET相 ...
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- 2019/3/7 Java学习之多线程(基础)
Java学习之多线程 讲到线程,就必须要懂得进程,进程是相当于一个程序的开始到结束,而线程是依赖于进程的,没有进程,就没有线程.线程也分主线程和子线程,当在主线程开启子线程时,主线程结束,而子线程还可 ...
- Java学习之旅基础知识篇:面向对象之封装、继承及多态
Java是一种面向对象设计的高级语言,支持继承.封装和多态三大基本特征,首先我们从面向对象两大概念:类和对象(也称为实例)谈起.来看看最基本的类定义语法: /*命名规则: *类名(首字母大写,多个单词 ...
- Java学习之旅基础知识篇:数据类型及流程控制
经过开篇对Java运行机制及相关环境搭建,本篇主要讨论Java程序开发的基础知识点,我简单的梳理一下.在讲解数据类型之前,我顺便提及一下Java注释:单行注释.多行注释以及文档注释,这里重点强调文档注 ...
- Java学习之旅基础知识篇:数组及引用类型内存分配
在上一篇中,我们已经了解了数组,它是一种引用类型,本篇将详细介绍数组的内存分配等知识点.数组用来存储同一种数据类型的数据,一旦初始化完成,即所占的空间就已固定下来,即使某个元素被清空,但其所在空间仍然 ...
- java学习之路--简单基础的面试题
1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注 ...
- java学习(一)--- 基础语法
学习内容来 自菜鸟教程 http://www.runoob.com/java/java-object-classes.html Java基础 Java:一个Java程序可以认为是一系列的对象组合, ...
- java 学习第一篇简单基础
Java基础 Java Java 和C#有着极为相似的语法. 和C#都是面向对象的高级程序语言. JAVA是一个开源,公开的语言,有着极其丰富的开源库和其他资源. JAVA分类 JAVA分SE EE ...
随机推荐
- [转]Python3《机器学习实战》学习笔记(一):k-近邻算法(史诗级干货长文)
转自http://blog.csdn.net/c406495762/article/details/75172850 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 一 简 ...
- 记录一个Q版openstack搭建教程地址
https://blog.csdn.net/networken/article/details/80682437 感谢这篇文章的作者,文档很详细,记录一下,希望对大家有帮助.
- docker登录运行中的容器的4方案
目前容器云非常的成熟,也有很多的使用案例,可以说不是什么高大上的东西了,可以说整个云计算也不是什么奢侈品,而是基础设施.但是如何使用,就成了必须的技术. 今天记录下,基于docker的容器登录技术. ...
- Linux中redis安装配置及使用详解
Linux中redis安装配置及使用详解 一. Redis基本知识 1.Redis 的数据类型 字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈 ...
- [转]Python依赖打包发布详细
Python依赖打包发布详细 http://www.cnblogs.com/mywolrd/p/4756005.html 将Python脚本打包成可执行文件 Python是一个脚本语言,被解释 ...
- spingMVC+mybatis+spring-session共享内存配置
1. redis依赖: <dependency> <groupId>org.springframework.session</groupId> <artifa ...
- Flask--(登录注册)抽取视图函数
视图函数抽取: 在info目录下准备视图业务模块包:modules 在modules中添加首页模块包index 在index包的__init__中导入蓝图 在index的__init__创建蓝图 在i ...
- Class 泛型
Java Class 泛型的例子说明: http://blog.chinaunix.net/uid-1911213-id-3085866.html http://blog.163.com/sir_87 ...
- Ubuntu 16.04 安装 JDK 1.8
系统环境 Ubuntu 16.04; JDK 1.8 配置安装 1.首先从oracle下载jdk 1.8,我下载的版本是jdk-8u131-linux-x64.tar.gz,运行tar zvxf jd ...
- Java中的权限修饰符private、protected、public
java中的修饰符分类: 权限修饰符: private, default, protected, public 状态修饰符: static, final 抽象修饰符: abstract 权限修饰符 我 ...