Exercício em Java

Olá a todos, sou novo no forum e iniciante em java.Gostaria que vocês me ajudasse com esse exercicio de java que o professor me passou:

  1. Crie um pacote “Calculo” com as classes “soma”, “subtracao”, “multiplicacao” e “divisao”. Verifique na classe “divisao” se o divisor é igual a zero, pois não é possível dividir um número por zero. Retorne ao usuário uma mensagem informando que a divisão não é possível.

  2. Crie ainda neste projeto um pacote chamado “Geometria” que tenha classes que realizem as seguintes funções:

a. Calcular a distância entre dois pontos.
b. Calcular a área de um quadrado.
c. Calcular a área de um triângulo.
d. Verificar se um triângulo é isósceles, escaleno ou eqüilátero.

Para este programa crie um programa principal que deverá importar estes pacotes e chamar as funções das classes correspondentes e passar os parâmetros necessários para a execução das tarefas.

eu comecei a fazer, mas não consegui finalizar.
to prescisando muito desse exercicio, espero que me ajudem.

desde já agradecido.
Jeregabriel.

Algo mais ou menos

package br.com.autoescola.java.teste.forum;

import javax.swing.JOptionPane;

public class Calculo
{
	private int soma = 0;
	private int subtracao = 0;
	private int multiplicacao = 0;
	private int divisao = 0;
	private String entradaFuncao;
	private String entrada;
	int entradaFuncaoValor = 0;

	public static void main(String[] args)
	{
		Calculo calculo = new Calculo();
		calculo.calcular();
	}

	public void calcular()
	{
		//entrada = JOptionPane.showInputDialog("Digite o numero: ");aqui entra um string
                //int entradaConvercao = Integer.parseInt(entrada);aqui esta convertendo a string em inteiro
		entradaFuncao = JOptionPane.showInputDialog("Informe a operação desejada (+ / * -) ");
		int valor1 = Integer.parseInt(JOptionPane.showInputDialog("Digite o numero: "));
		int valor2 = Integer.parseInt(JOptionPane.showInputDialog("Digite o numero: "));
		if (entradaFuncao != null && entradaFuncao.trim().equals("+"))
		{
			this.entradaFuncaoValor = 1;
		}
		else if (entradaFuncao != null && entradaFuncao.trim().equals("/"))
		{
			this.entradaFuncaoValor = 4;
		}
		else if (entradaFuncao != null && entradaFuncao.trim().equals("*"))
		{
			this.entradaFuncaoValor = 3;
		}
		else if (entradaFuncao != null && entradaFuncao.trim().equals("-"))
		{
			this.entradaFuncaoValor = 2;
		}
		else
		{
			JOptionPane.showMessageDialog(null, "função não valida ");
			calcular();
		}
		switch (entradaFuncaoValor)
		{
			case 1:
				soma = valor1 + valor2;
				JOptionPane.showMessageDialog(null, "soma: " + soma);
				calcular();
				break;
			case 2:
				subtracao = valor1 - valor2;
				JOptionPane.showMessageDialog(null, "subtracao: " + subtracao);
				break;
			case 3:
				multiplicacao = valor1 * valor2;
				JOptionPane.showMessageDialog(null, "multiplicacao: " + multiplicacao);
				calcular();
				break;
			case 4:
				if (valor1 != 0 & valor2 != 0)
				{
					divisao = valor1 / valor2;
					JOptionPane.showMessageDialog(null, "divisao: " + divisao);
					calcular();
				}
				else
				{
					JOptionPane.showMessageDialog(null, "não é permitido divisão por zero");
					calcular();
				}
				break;
		}
	}
}

agora eu so ruim para lembra como calcular area tenho que volter uns anos atras ai mesmo porque vou precisar

obs. pode lancar exceções que deve ser tradatas por exemplo valores nulos