Implements versus extends : all matters in inheritance.
  Also See: Link

import java.io.*;
//import java.util.*;//to use EnumSet, EnumMap classes
public class Test_This {
public static void main(String[] args) throws IOException{
// TODO Auto-generated method stub
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String str ="";
Process pp = new Process();
try{
System.out.print("Please write your name: ");
str = br.readLine();
System.out.println("After Effect : " + pp.MyFunction_1(str));
}//try
catch(NumberFormatException e)
{ System.out.println("data was blank");}
}
}
class Process extends Abstract_class
{
public Process() { System.out.println("Process outer constructor");}
public int n2; String name="", str_outer="";
public String MyFunction_1(String str)
{
str += str.toUpperCase();
this.name = str;
return name;
//this allows process to instantiate a function
//inherited from an abstract class
}
}//end of class process

interface Note_1
{
int x1=10;
// int y; //is not allowed
}
interface Note extends Note_1
{
int x1= 20;
int z= 50;
String MyFunction_1(String str);
}
class A extends Process
{
//allowed
}
abstract class Abstract_class implements Note_1
{
abstract String MyFunction_1(String str);

}