<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[我的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/tcherry</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tcherry]]></copyright><item><title><![CDATA[Talk Is Cheap,]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/48858211</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/48858211</guid><author>tcherry</author><pubDate>Fri, 02 Oct 2015 08:39:31 +0800</pubDate><description><![CDATA[1.《WEB之困-现代WEB应用安全指南》
2015/10/01 - 2015/10/07]]></description><category></category></item><item><title><![CDATA[python下载图片]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/48343095</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/48343095</guid><author>tcherry</author><pubDate>Thu, 10 Sep 2015 14:34:33 +0800</pubDate><description><![CDATA[import re  
import urllib  
  
def getHtml(url):  
    page = urllib.urlopen(url)  
    html = page.read()  
    return html  
  
def getImg(html):  
    reg = r'src="(.+?\.jpg)" pic_ext'  
    imgre ]]></description><category></category></item><item><title><![CDATA[Spring之初见端倪——配置篇]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47343607</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47343607</guid><author>tcherry</author><pubDate>Fri, 07 Aug 2015 18:59:41 +0800</pubDate><description><![CDATA[Spring框架目前在我看来是Java Web中最经典也是最为成功web框架，作为轻量级的框架，有许多优点。
Spring的特点是：IOC控制反转、AOP面向切面编程、反射机制等。我觉得最重要的特性之一是bean。
下面介绍一下相关文件的配置。
1.
2.
3.]]></description><category></category></item><item><title><![CDATA[App15_列出某个文件下所有目录（树形）]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47046085</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47046085</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 20:06:05 +0800</pubDate><description><![CDATA[//列出某个文件下所有目录（树形）
//spaceStr compact!
import java.io.*;

public class FileList {
	public static void main(String[] args) {
		File f = new File("f:/FunshionMedia");
		tree(f, 0);

	}

	private static v]]></description><category></category></item><item><title><![CDATA[App11]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045981</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045981</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:57:58 +0800</pubDate><description><![CDATA[/**
 * 项目名称：App11_多线程0929 
 * 文件名：Main.java
 * 版本信息：
 * 日期：2014年9月29日
 * Copyright asiainf-linkage Corporation 2014
 * 版权所有 *
 */

/**
 * Main
 * 
 * @author：shaojh@asiainfo.com
 * @2014年9月29日 下午12:44]]></description><category></category></item><item><title><![CDATA[App11_08_用两个线程模拟存票、售票过程]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045895</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045895</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:52:19 +0800</pubDate><description><![CDATA[//用两个线程模拟存票、售票过程，直到售完为止  存票->售票->存票->售票->存票...
//wait() vs sleep():wait放弃CPU资源同时让出控制权（释放已有对象的互斥锁），sleep还是占有
public class App11_8 {
	public static void main(String[] args) {
		Tickets t = new Tickets(1]]></description><category></category></item><item><title><![CDATA[App11_06_多线程同步]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045885</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045885</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:51:02 +0800</pubDate><description><![CDATA[//用线程同步的方法设计用户从银行取款的应用程序
//用synchronized关键字标识同步的资源--临界区
class Mbank // 模拟银行账户类
{
	private static int sum = 2000; // 临界区的共享变量 通常为私有静态变量

	public synchronized static void take(int k) // 限定take()为同步方法
	{]]></description><category></category></item><item><title><![CDATA[App11_04_Thread子类数据共享]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045851</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045851</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:48:54 +0800</pubDate><description><![CDATA[//创建一个Thread子类，模拟航班售票窗口 --每张票被卖了3次 不科学！
class ThreadSale extends Thread {
	private int tickets = 10;// 私有变量tickets 共享数据

	public void run() {
		while (true) {
			if (tickets > 0)// 如果有票可售
				System.o]]></description><category></category></item><item><title><![CDATA[App11_05_Runnable接口程序模拟航班售票系统]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045877</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045877</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:48:48 +0800</pubDate><description><![CDATA[//Runnable接口程序模拟航班售票系统--cool! Runnable接口适合处理多线程访问同一资源
class ThreadSale implements Runnable {
	private int tickets = 10;

	public void run() {
		while (true) {
			if (tickets > 0)
				System.out.printl]]></description><category></category></item><item><title><![CDATA[App11_03_线程中join()方法的使用]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045847</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045847</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:47:24 +0800</pubDate><description><![CDATA[//线程中join()方法的使用
class MyThread extends Thread 
{
	private String who;
	public MyThread(String str)   
	{
		who=str;
	}
	public void run()        
	{
		for(int i=0;i<5;i++)
		{
			try
			{
				sleep((]]></description><category></category></item><item><title><![CDATA[App11_01_创建Thread类的子类来创建线程]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045827</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045827</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:45:45 +0800</pubDate><description><![CDATA[//创建Thread类的子类来创建线程
class MyThread extends Thread // 继承Thread类
{
	private String who;

	public MyThread(String str) // 构造方法
	{
		who = str;
	}

	public void run() // 必须覆盖父类Thread里的run()方法！！！
	{
		for ]]></description><category></category></item><item><title><![CDATA[App11_02_利用Runnable接口来创建线程]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045839</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045839</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:45:21 +0800</pubDate><description><![CDATA[//利用Runnable接口来创建线程--功能like 11_01
class MyThread implements Runnable 
{
	private String who;
	public MyThread(String str)   //构造方法
	{
		who=str;
	}
	public void run()         //实现run()方法
	{
		for(int ]]></description><category></category></item><item><title><![CDATA[App9_IOException]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045817</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045817</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:44:55 +0800</pubDate><description><![CDATA[import java.io.*;

public class App {
	public static void main(String[] args) {
		FileInputStream in = null;
		try {
			in = new FileInputStream("theFileIsNotExist.txt");
			int b;
			b = in.read();
	]]></description><category></category></item><item><title><![CDATA[App9_07_自定义异常类   以Exception为直接父类]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045801</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045801</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:43:35 +0800</pubDate><description><![CDATA[//自定义异常类   以Exception为直接父类
//throw  -抛出对象   new
//throws -抛出已知的错误 自己不处理 抛出

class CircleException extends Exception   //自定义异常类
{
	double radius; 
	CircleException(double r)       //自定义异常类的构造方法
	{
		ra]]></description><category></category></item><item><title><![CDATA[App9_06_利用IOException的异常处理]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045787</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045787</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:41:38 +0800</pubDate><description><![CDATA[//利用IOException的异常处理    直接回车会提示
import java.io.*;
public class App9_6 {
	public static void main(String[] args)
	{
		String str;
		BufferedReader buf;
		buf=new BufferedReader(new InputStreamReader(Sy]]></description><category></category></item><item><title><![CDATA[App9_12_异常的捕获与处理]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045777</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045777</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:41:31 +0800</pubDate><description><![CDATA[//异常的捕获与处理
public class App9_2 {
	public static void main(String[] args)
	{
		int i;
		int[] a={1,2,3,4};
		for(i=0;i<5;i++)     //下标越界  出错
		{
			try 
			{
				System.out.print("a["+i+"]="+(a[i]/i));]]></description><category></category></item><item><title><![CDATA[App8_15_匿名内部类]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045769</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045769</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:40:52 +0800</pubDate><description><![CDATA[//匿名内部类
public class App8_15 {
	public static void main(String[] args)
	{
		//----------------------创建匿名内部类Inner的对象（）其实是空的--匿名
		new Inner()
		{
			void setName(String n)
			{  
				name=n;
				System]]></description><category></category></item><item><title><![CDATA[App8_14_内部类与外部类的访问规则]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045753</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045753</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:39:33 +0800</pubDate><description><![CDATA[//内部类与外部类的访问规则
//在外部类中，通过一个内部类的对象引用内部类中的成员；在内部类中，可以直接引用它的外部类成员（包括静态成员、实例成员、私有成员）
//内部类也可以为private||protected
//内部类也可以通过创建对象从外部类之外被调用但必须将内部类声明为public的
public class Group       //外部类
{
	private int age;]]></description><category></category></item><item><title><![CDATA[App8_12_利用接口实现多重继承]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045743</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045743</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:38:33 +0800</pubDate><description><![CDATA[//利用接口实现多重继承 interface implements
interface Face1
{
	final double PI=3.14;
	abstract double area();
}
interface Face2
{
	abstract void volume();
}
public class Cylinder implements Face1,Face2//多重继承，只能]]></description><category></category></item><item><title><![CDATA[App8_10_抽象类abstract]]></title><link>https://blog.youkuaiyun.com/tcherry/article/details/47045731</link><guid>https://blog.youkuaiyun.com/tcherry/article/details/47045731</guid><author>tcherry</author><pubDate>Fri, 24 Jul 2015 19:36:28 +0800</pubDate><description><![CDATA[//抽象类abstract--like C++ 模板
abstract class Shape
{
	protected String name;
	public Shape(String xm)//抽象类中的一般方法，构造方法
	{
		name=xm;
		System.out.print("名称"+name);
	}
	abstract public double getArea();   ]]></description><category></category></item></channel></rss>