package tests;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
/**
* <pre>
* Class name: Demo
* Created by SYGSKY for package ru.ts.tests
* Date: 17.12.2010
* Time: 16:47:55
* <p/>
* ... remove as soon as possible as it is only for testing purposes ...
* <p/>
* Changes:
* </pre>
*/
public class FullScreen extends java.applet.Applet
{
private Label l;
private Window w;
private boolean running;
private int clicks;
private String[] messages = new String[]{
"Прикольно, да?",
"ты хочешь меня... удалить…",
"Ты знаешь, я не должна, но, но...",
"Я прекрасна, прсто кликни по мне ещё раз :)"
};
public synchronized void start()
{
w = new Window( new Frame() );
l = new Label( "PWND" );
l.setFont( new Font( "Serif", Font.BOLD, 120 ) );
l.setAlignment( l.CENTER );
l.setForeground( Color.white );
l.addMouseListener( new MouseAdapter()
{
public void mouseClicked( MouseEvent me )
{
clicked();
}
}
);
l.setCursor( Cursor.getPredefinedCursor( Cursor.HAND_CURSOR ) );
w.setBackground( Color.CYAN );
w.setOpacity( 0.7f );
w.setLayout( new BorderLayout() );
w.add( l, BorderLayout.CENTER );
Dimension ss = Toolkit.getDefaultToolkit().getScreenSize();
w.setBounds( 0, -128, ss.width, ss.height + 256 );
w.setVisible( true );
running = true;
new Thread()
{
public void run()
{
while ( isRunning() )
{
try
{
EventQueue.invokeAndWait( toFront );
sleep( 10 );
}
catch ( Exception ex )
{
ex.printStackTrace();
return;
}
}
}
}.start();
try
{
w.setAlwaysOnTop( true );
}
catch ( Throwable t )
{
// it was just an attempt, we know this should be forbidden to Applets
}
}
private Runnable toFront = new Runnable()
{
public void run()
{
w.toFront();
}
};
private synchronized boolean isRunning()
{
return running;
}
private synchronized void clicked()
{
if ( clicks >= messages.length )
{
running = false;
w.dispose();
return;
}
if ( clicks == 1 )
{
l.setFont( new Font( "Serif", Font.BOLD, 40 ) );
}
l.setText( messages[ clicks++ ] );
}
}
то где писать то, что я писал в main(String args[]). Но если предположить, что ищется метод, где всё инициализируется и код пользователя запускается в первый раз, то это вполне может быть класс в HTTP-сервере (написанном на Java), расширяющий системный класс HTTPServlet и перекрывающий его метод init. Наподобие ниже приведённого:
public final class CustomerDispatcher extends HttpServlet {
...
// Вызывается при инициализации сервлета!
public void init(ServletConfig config) throws ServletException {
super.init(config);
this.context = config.getServletContext();
this.contextPath = this.context.getContextPath();
this.rp = new RequestProcessor(this.context);
this.sman = FssServiceFactory.getFactory().getSecurityManager();
}
...
Date date = new Date();
SimpleDateFormat hoursmins = new SimpleDateFormat("HHmm");
String stringHoursMins = hoursmins .format(date);
int hourandminute = Integer.parseInt(hoursmins );
// JAVA code
public static void main( String[] args ) throws Exception
{
for(int num: new int[]{10,100,1000, 10000,100000,1000000})
probByNum( num );
}
private static void probByNum( int num )
{
//final char[] chars = { 'а', 'б', 'в' };
final double[] probs = { 0.12d, 0.5d, 1.0d }; // cumulative probability for each value
int[] res = new int[ 3 ];
Random rnd = new Random( ( new Date() ).getTime() ); // each time different seed
for ( int i = 1; i <= num; i++ )
{
double prob = rnd.nextDouble();
for ( int j = 0; j < 3; j++ )
{
if ( prob < probs[ j ] )
{
res[ j ]++; // count detected probability
break;
}
}
}
System.out.println(
String.format( Locale.ENGLISH,"Probability with %10d trials to hit 0.120, 0.380, 0.500 is: %4.3f, %4.3f, %4.3f",
num,
( ( ( double ) res[ 0 ] ) / ( double ) num ),
( ( ( double ) res[ 1 ] ) / ( double ) num ),
( ( ( double ) res[ 2 ] ) / ( double ) num ) ) );
}
// Results:
Probability with 10 trials to hit 0.120, 0.380, 0.500 is: 0.100, 0.200, 0.700
Probability with 100 trials to hit 0.120, 0.380, 0.500 is: 0.080, 0.410, 0.510
Probability with 1000 trials to hit 0.120, 0.380, 0.500 is: 0.122, 0.375, 0.503
Probability with 10000 trials to hit 0.120, 0.380, 0.500 is: 0.124, 0.377, 0.499
Probability with 100000 trials to hit 0.120, 0.380, 0.500 is: 0.122, 0.377, 0.501
Probability with 1000000 trials to hit 0.120, 0.380, 0.500 is: 0.119, 0.380, 0.501