第五章:网络编程(下) 1.Socket多客户端通信实现 1.客户端程序代码: 客户端代码与第四章中客户端代码相同,不再累述。 2.服务器端程序代码: //MultiTalkeServer.java文件 import java.io.*; import java.net.*; public class MultiTalkServer { static int&…
第五章:网络编程(下) 1.Socket多客户端通信实现 1.客户端程序代码: 客户端代码与第四章中客户端代码相同,不再累述。 2.服务器端程序代码: //MultiTalkeServer.java文件 import java.io.*; import java.net.*; public class MultiTalkServer { static int&…
第一节:数据结构基本知识 1.1 什么是数据结构 例:写程序实现一个函数PrintN,使得传入一个正整数位N的参数后,能顺序打印从1道N的全部正整数。 代码1(循环实现): void PrintN(int N){ int i; for(i =1; i<=N; i++) &n…
第四章 网络编程(上) 4.1 URL对象 例:通过URL读取WWW信息 代码: import java.net.*; import java.io.*; public class URLReader{ public static void main(String[] args) throws Exception{ &n…
第四周:程序的控制结构 4.1 程序的分支结构 1.单分支结构 if<条件>: <语句块> 2.二分支结构 if <condition>: <yujukuai1> else: <yujukuai2> 还有一种紧凑表达式: <表达式1>if<条件> else<表达式2> 例如: guess =eval(input()) …
第三章 线程(下) 3.1 线程安全与线程兼容与对立 线程安全:当多个线程访问同一个对象时,如果不同考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那这个对象是线程安全的。它包括: (1)不可变。如果它访问的对象是不可修改的,那么它本身就是安全的。比如: ①final修饰:public final a =100; ②java.lang.String: String s = “String”;string常量 ③枚举类型:…
第三章:基本数据类型 3.1 数字类型及操作 1.整数类型 (1)pow(x,y)函数,计算x的y次方,想算多大算多大。 (2)4种进制表示形式: ①十进制:1010,99等; ②二进制:以0b或者0B开头:0b10,-0B101等; ③八进制:以0o或0O开头:0o123,-0O456等; ④十六进制:以0x或者0X开头:0x9a,-0X89等。 2.浮点数类型 取值范围为-10的308次方到10的308次方,精度数量级10的-16次方。 浮点数间存在不确定尾数,不是bug。为了解决这一个问题,可以使用roud(…
第二章 线程(中) 2.1 线程同步的思想 1.多线程的同步控制 有时候线程之间彼此不独立,需要同步: (1)线程间的互斥:同时运行的几个线程需要共享一个(些)数据;共享的数据,在某一时刻只允许一个线程对其进行操作。 如“生产者/消费者”问题:假设有一个线程负责往数据区写数据,另一个线程从同一数据区中读数据,两个线程可以并行执行,如果数据区已经满了,生产者需要消费者取走一些数据后才能再写入;当数据区空时,消费者要等生产者写入一些数据后再读取。 例:用两个线程模拟存票和售票过程: 假定开始售票处并没有票,一个线程往里…
